(Even though jvines beat me to it...)

Did you build the Accumulo distribution on the node which you're having these troubles on?

The native maps (the libNativeMap-Linux-amd64-64.so file) is C++ code which is called through JNDI. I'm rusty on my dynamic linking, but check the version of gcc and glibc installed on the host in question. I'm guessing there person who built the dist tarball you downloaded doesn't match the versions you have on that host. Post your linux distro/release and the output of `gcc -v` if you need more guidance.

An alternative, although not a very desirable one, is to move the native maps out of lib/native (just move it to lib/native-orig and the tserver will just use Java code for the inMemoryMaps. Your performance will suffer, but the tserver should start right up.

On 07/24/2012 04:21 PM, Cardon, Tejay E wrote:

I’ve been trying to run Accumulo on a new cluster, but I’m having trouble. I’ve done this many times before, but this time I’m getting an error on the tservers regarding glibc. I think I’ve tracked it down to a version issue (the version of Glibc I’ve got installed isn’t new enough, so it doesn’t contain the right version of GLIBCXX). I ran into this once before, and the solution was to build Accumulo from scratch with Maven. However, I’ve tried that this time with no success. If I download the *dist.tar.gz and do the build from there, it fails. If I download the *-src.tar.gz and build from it, I can’t seem to find the final packaged .tar.gz. If I use the src.tar.gz, build it, and then just use the directory I built from, I get an error about setting up log4j. Any suggestions?

Thanks

Tejay

Here’s the error I get if I use the –dist.tar.gz This error is found in the .debug.log and .log files from the tserver.

ERROR: Failed to load native map library /opt/accumulo-1.4.0/lib/native/map/libNativeMap-Linux-amd64-64.so

java.lang.UnsatisfiedLinkError: /opt/accumulo-1.4.0/lib/native/map/libNativeMap-Linux-amd64-64.so: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /opt/accumulo-1.4.0/lib/native/map/libNativeMap-Linux-amd64-64.so)

at java.lang.ClassLoader$NativeLibrary.load(Native Method)

at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1807)

at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1703)

at java.lang.Runtime.load0(Runtime.java:770)

Reply via email to