Skip to content

[Inquiry] Java binding doesn't support alpine OS #4073

@adsouz-icims

Description

@adsouz-icims

Inquiry

Seems like vlakey-glide does not support Alpine Linux.

I tried to use valkey-glide:osx-arch_64:2.0.0-rc3 (using the maven config) in my java spring boot application on my local mac computer. It works fine when I run the application standalone and have it connect to a local valkey engine running in docker. If I make a docker image of my application and run it in a local docker container, I get this error:
Caused by: java.lang.UnsatisfiedLinkError: /tmp/nativeutils1136740648544752/libglide_rs.so: Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /tmp/nativeutils1136740648544752/libglide_rs.so)

I worked around that by adding RUN apk add libc6-compat to my Dockerfile. But that produced another error, Caused by: java.lang.UnsatisfiedLinkError: 'java.lang.String glide.ffi.resolvers.SocketListenerResolver.startSocketListener()' I have gcc installed on my computer.

When I run the application in a docker container in AWS running Alpine Linux, I get this error java.lang.UnsatisfiedLinkError: /tmp/nativeutils1134542456606439/libglide_rs.so: Error relocating /tmp/nativeutils1134542456606439/libglide_rs.so: gnu_get_libc_version: symbol not found

Looks like the valkey-glide jar is compiled against the GNU C Library (glibc) while Alpine Linux uses a different C library - musl libc.

Is there a solution to this issue?

Language

No response

Language Version

No response

Engine Version

No response

Operating System

No response

Additional Technical Information

No response

Metadata

Metadata

Labels

CI/CD ⚒️CI/CD relatedFeature ✨Additional feature, big or smallPlatforms 🧱Platforms support related issues and fixesUser issue 🚨Issue opened by a userUsers PainAn issue known to cause users pain, generaly open by the user.java ☕issues and fixes related to the java client

Projects

Status

Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions