# Apache Storm 2 - Nimbus error => Cannot determine JNI library name for ARCH='amd64' OS='freebsd' name='rocksdb'



## TrOuBLe (Sep 8, 2019)

Hi
i m installing Apache Storm 2.0.0 from apache download site as the available freebsd port remains at version 0.9
following the required dependencies listed at apache site i have installed java "openjdk8" and "openjdk11" (64 bit) trying to solve the following generated error captured when trying to call nimbus to load by "storm nimbus" command from the storm bin folder


```
2019-09-08 14:28:47.950 o.a.s.u.Utils main [ERROR] Received error in thread main.. terminating server...
java.lang.Error: java.lang.ExceptionInInitializerError
    at org.apache.storm.utils.Utils.handleUncaughtException(Utils.java:647) ~[storm-client-2.0.0.jar:2.0.0]
    at org.apache.storm.utils.Utils.handleUncaughtException(Utils.java:626) ~[storm-client-2.0.0.jar:2.0.0]
    at org.apache.storm.utils.Utils.lambda$createDefaultUncaughtExceptionHandler$2(Utils.java:982) ~[storm-client-2.0.0.jar:2.0.0]
    at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1057) [?:1.8.0_222]
    at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1052) [?:1.8.0_222]
    at java.lang.Thread.dispatchUncaughtException(Thread.java:1959) [?:1.8.0_222]
Caused by: java.lang.ExceptionInInitializerError
    at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:64) ~[rocksdbjni-5.8.6.jar:?]
    at org.rocksdb.RocksDB.<clinit>(RocksDB.java:35) ~[rocksdbjni-5.8.6.jar:?]
    at org.apache.storm.metricstore.rocksdb.RocksDbStore.prepare(RocksDbStore.java:67) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.metricstore.MetricStoreConfig.configure(MetricStoreConfig.java:33) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.<init>(Nimbus.java:528) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.<init>(Nimbus.java:471) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.<init>(Nimbus.java:465) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.launchServer(Nimbus.java:1282) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.launch(Nimbus.java:1307) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.main(Nimbus.java:1312) ~[storm-server-2.0.0.jar:2.0.0]
Caused by: java.lang.UnsupportedOperationException: Cannot determine JNI library name for ARCH='amd64' OS='freebsd' name='rocksdb'
    at org.rocksdb.util.Environment.getJniLibraryName(Environment.java:66) ~[rocksdbjni-5.8.6.jar:?]
    at org.rocksdb.NativeLibraryLoader.<clinit>(NativeLibraryLoader.java:19) ~[rocksdbjni-5.8.6.jar:?]
    at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:64) ~[rocksdbjni-5.8.6.jar:?]
    at org.rocksdb.RocksDB.<clinit>(RocksDB.java:35) ~[rocksdbjni-5.8.6.jar:?]
    at org.apache.storm.metricstore.rocksdb.RocksDbStore.prepare(RocksDbStore.java:67) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.metricstore.MetricStoreConfig.configure(MetricStoreConfig.java:33) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.<init>(Nimbus.java:528) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.<init>(Nimbus.java:471) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.<init>(Nimbus.java:465) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.launchServer(Nimbus.java:1282) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.launch(Nimbus.java:1307) ~[storm-server-2.0.0.jar:2.0.0]
    at org.apache.storm.daemon.nimbus.Nimbus.main(Nimbus.java:1312) ~[storm-server-2.0.0.jar:2.0.0]
```

note the following loading within the terminal 

```
root@1-engine:~/storm # bin/storm nimbus
Running: /usr/local/openjdk8-jre/bin/java -server -Ddaemon.name=nimbus -Dstorm.options= -Dstorm.home=/root/storm -Dstorm.log.dir=/root/storm/logs -Djava.library.path=/usr/local/lib:/opt/local/lib:/usr/lib:/usr/lib64 -Dstorm.conf.file= -cp /root/storm/*:/root/storm/lib/*:/root/storm/extlib/*:/root/storm/extlib-daemon/*:/root/storm/conf -Xmx1024m -Djava.deserialization.disabled=true -Dlogfile.name=nimbus.log -Dlog4j.configurationFile=/root/storm/log4j2/cluster.xml org.apache.storm.daemon.nimbus.Nimbus
root@1-engine:~/storm #
```

in fact the node has running services for Zookeeper and Kafka without any issues.

it looks like the problem is within the rocksdb java library compatibility issue with freebsd.
I hope someone can help overriding this issue on this Freebsd 12 (64bit) server

for more information dont hesitate to contact me
thanks for your cooperation 
regards


----------

