I\'m writing a Kafka Streams application on my development Windows machine.
If I try to use the leftJoin
and branch
features of Kafka Streams I get
You are missing some native libraries that the rocksdb dll depends on. See https://github.com/facebook/rocksdb/issues/1302
Faced similar issue in Mac. As per this link, https://github.com/facebook/rocksdb/issues/5064 issue is related to older libc installed in my version of Mac OS (10.11.6).
I had same issue while using jdk 1.8. It got resolved when I changed it to jre.
My problem was permissions in /tmp/
directory (CentOS)
rockdb uses
java.io.tmpdir
system property internally to decide where to place librocksdbjni
file, usually something like this /tmp/librocksdbjni2925599838907625983.so
Solved by setting different tempdir property with appropriate permissions in kafka-streams app.
System.setProperty("java.io.tmpdir", "/opt/kafka-streams/tmp");
Recently I came through this problem too. I managed to solve this in two steps:
librocksdbjni[...].dll
files from C:\Users\[your_user]\AppData\Local\Temp
folder.rocksdb
in your project, this works for me: https://mvnrepository.com/artifact/org.rocksdb/rocksdbjni/5.0.1Compile your Kafka Stream App and run it. It should work!
I updated my kafka-streams project to the latest released version 1.0.0.
This version suffers of this bug but after patching it and uploading this patched version on the internal Artifactory server we were able to execute our kafka-streams agent both on Windows and on Linux. The next versions 1.0.1 and 1.1.0 will have this bug fix so as soon as one of these versions will be released we will switch to them instead of the patched version.
To sum up the Kafka guys solved this bug with the 1.0.0 release.