Troubleshooting IBM eXtremeMemory

Use the following information to troubleshoot eXtremeMemory.

Procedure

Problem: If the shared resource, libstdc++.so.5, is not installed, then when you start the container server, IBM eXtremeMemory native libraries do not load.
[Linux]Symptom: On a Linux 64-bit operating system, if you try to start a container server with the enableXM server property set to true, and the libstdc++.so.5 shared resource is not installed, you get an error similar to the following example:
00000000 Initialization W CWOBJ0006W: An exception occurred: java.lang.reflect.InvocationTargetException     
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)     
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:56)     
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:39)     
	at java.lang.reflect.Constructor.newInstance(Constructor.java:527)     
	at com.ibm.websphere.objectgrid.server.ServerFactory.initialize(ServerFactory.java:350)     
	at com.ibm.websphere.objectgrid.server.ServerFactory$2.run(ServerFactory.java:303)     
	at java.security.AccessController.doPrivileged(AccessController.java:202)     
	at com.ibm.websphere.objectgrid.server.ServerFactory.getInstance(ServerFactory.java:301)     
	at com.ibm.ws.objectgrid.InitializationService.main(InitializationService.java:302) 

Caused by: com.ibm.websphere.objectgrid.ObjectGridRuntimeException: java.lang.UnsatisfiedLinkError: 
	OffheapMapdbg (Not found in java.library.path)     
	at com.ibm.ws.objectgrid.ServerImpl.<init&gt;(ServerImpl.java:1033)     
... 9 more Caused by: java.lang.UnsatisfiedLinkError: OffheapMapdbg (Not found in java.library.path)     
	at java.lang.ClassLoader.loadLibraryWithPath(ClassLoader.java:1011)     
	at java.lang.ClassLoader.loadLibraryWithClassLoader(ClassLoader.java:975)    
 at java.lang.System.loadLibrary(System.java:469)     
	at com.ibm.ws.objectgrid.io.offheap.ObjectGridHashTableOH.initializeNative(ObjectGridHashTableOH.java:112)     
	at com.ibm.ws.objectgrid.io.offheap.ObjectGridHashTableOH.<clinit&gt;(ObjectGridHashTableOH.java:87)     
	at java.lang.J9VMInternals.initializeImpl(Native Method)     
	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)     
	at com.ibm.ws.objectgrid.ServerImpl.<init&gt;(ServerImpl.java:1028)     
... 9 more

Cause: The shared resource libstdc++.so.5 has not been installed.

Diagnosing the problem: To verify that the resource libstdc++.so.5 is installed, issue the following command from the ObjectGrid/native directory of your installation:
ldd libOffheapMap.so
If you do not have the shared library installed, you get the following error:
ldd libOffheapMap.so
libstdc++.so.5 => not found
Resolving the problem: Use the package installer of your 64-bit Linux distribution to install the required resource file. The package might be listed as compat-libstdc++-33.x86_64 or libstdc++5. After installing the required resource, verify that the libstdc++5package is installed by issuing the following command from the ObjectGrid directory of your installation:
ldd libOffheapMap.so