Identification et résolution des incidents liés à IBM eXtremeMemory et IBM eXtremeIO

Les informations suivantes sont destinées à vous aider à identifier et à résoudre les incidents liés à eXtremeMemory et à eXtremeIO.

Procédure

Problème : Si la ressource partagée, libstdc++.so.5, n'est pas installée, lorsque vous démarrez le serveur de conteneur, les bibliothèques natives IBM eXtremeMemory ne se chargent pas.
[Linux] Symptôme : Sur les systèmes d'exploitation Linux 64 bits, si vous tentez de démarrer un serveur de conteneur avec la propriété serveur enableXM définie sur true et si la ressource partagée libstdc++.so.5 n'est pas installée, vous recevez un message d'erreur similaire au suivant :
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 : La ressource partagée libstdc++.so.5 n'a pas été installée.

Diagnostic du problème : Pour vérifier si la ressource libstdc++.so.5 est installée, lancez la commane suivante à partir du répertoire ObjectGrid/native de votre installation :
ldd libOffheapMap.so
Si la bibliothèque partagée n'est pas installée, vous recevez l'erreur suivante :
ldd libOffheapMap.so
libstdc++.so.5 => not found
Résolution du problème : Utilise le programme d'installation de package de votre distribution Linux 64 bits pour installer le fichier de ressources requis. Ce package peut se présenter sous la forme compat-libstdc++-33.x86_64 ou libstdc++5. Une fois la ressource installée, vérifiez que le package libstdc++5 est installé en lançant la commande suivante à partir du répertoire ObjectGrid de votre installation :
ldd libOffheapMap.so