java - Cassandra Startup Error 1.2.6 en Linux x86_64
x86-64 snappy (2)
En caso de que alguien haya encontrado esta publicación con la configuración que tengo:
- rhel 5
- cassandra 2.0.2
Tuve un problema de inicio: no se encontró la versión `GLIBCXX_3.4.9 ''
Solución propuesta:
- Compila snappy 1.1.0 (supongo que podría haber sido 1.0.5) en rhel 5.
- Reemplace snappy 1.0.5 de la distribución original de cassandra 2.0.2 con la versión anterior
- Reinicie en secuencia (inicialice primero y luego otros nodos para unir)
Pasó por alto el problema, parece.
Espero que las futuras versiones de cassandra tengan instrucciones relacionadas con la variedad de versiones del sistema operativo. En teoría, esto debería funcionar ...
INFO 23:49:07,006 Enqueuing flush of Memtable-local@926294408(43/430 serialized/live bytes, 2 ops)
INFO 23:49:07,006 Writing Memtable-local@926294408(43/430 serialized/live bytes, 2 ops)
INFO 23:49:07,019 Completed flushing /var/lib/cassandra/data/system/local/system-local-jb-10-Data.db (70 bytes) for commitlog position ReplayPosition(segmentId=1383810511586, position=220516)
INFO 23:49:07,030 Enqueuing flush of Memtable-local@1880462876(10086/100860 serialized/live bytes, 257 ops)
INFO 23:49:07,030 Writing Memtable-local@1880462876(10086/100860 serialized/live bytes, 257 ops)
INFO 23:49:07,042 Completed flushing /var/lib/cassandra/data/system/local/system-local-jb-11-Data.db (5280 bytes) for commitlog position ReplayPosition(segmentId=1383810511586, position=232503)
INFO 23:49:07,064 Node myeng11.mycompany.com/10.65.0.201 state jump to normal
INFO 23:49:07,067 Startup completed! Now serving reads.
Intentando instalar cassandra en Linux desde la última versión estable - http://cassandra.apache.org/download/ - 1.2.6
He modificado el cassndra.yaml para que apunte a un directorio personalizado en lugar de / var ya que no tengo acceso de escritura en / var
Estoy viendo este error al inicio. Todavía no he podido encontrar respuestas en Google, ya que el lanzamiento parece relativamente nuevo. Solo publíquelo aquí en caso de que sea un error tonto de mi parte.
El mismo archivo de distribución funcionó bien en mi máquina macos x86_64.
INFO 19:24:35,513 Not using multi-threaded compaction
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.xerial.snappy.SnappyLoader.loadNativeLibrary(SnappyLoader.java:322)
at org.xerial.snappy.SnappyLoader.load(SnappyLoader.java:229)
at org.xerial.snappy.Snappy.<clinit>(Snappy.java:48)
at org.apache.cassandra.io.compress.SnappyCompressor.create(SnappyCompressor.java:45)
at org.apache.cassandra.io.compress.SnappyCompressor.isAvailable(SnappyCompressor.java:55)
at org.apache.cassandra.io.compress.SnappyCompressor.<clinit>(SnappyCompressor.java:37)
at org.apache.cassandra.config.CFMetaData.<clinit>(CFMetaData.java:82)
at org.apache.cassandra.config.KSMetaData.systemKeyspace(KSMetaData.java:81)
at org.apache.cassandra.config.DatabaseDescriptor.loadYaml(DatabaseDescriptor.java:468)
at org.apache.cassandra.config.DatabaseDescriptor.<clinit>(DatabaseDescriptor.java:123)
at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:211)
at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:441)
at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:484)
Caused by: java.lang.UnsatisfiedLinkError: /tmp/snappy-1.0.5-libsnappyjava.so: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9'' not found (required by /tmp/snappy-1.0.5-libsnappyjava.so)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.load0(Unknown Source)
at java.lang.System.load(Unknown Source)
at org.xerial.snappy.SnappyNativeLoader.load(SnappyNativeLoader.java:39)
... 17 more
Por favor, sugiera cuál podría ser el problema. También agregaré más hallazgos a esta página a medida que descubro algo nuevo.
Visto esto así que hilo - cassandra 1.2 no puede iniciar snappy en freebsd
Sin embargo, todavía veo problema.
He intentado configurar
internode_compression: none
Sin embargo, aún se ve el mismo error en los registros.
Parece que estás (a) ejecutándose en un sistema con un glibc incompatible para snappy 1.0.5 y (b) actualizado de una versión anterior que funcionó.
Si inicia Cassandra Fresh en un sistema que no sea compatible con Snappy, detectará el problema y omitirá la compresión. Pero cuando estás actualizando y tienes tablas del sistema comprimidas, no hay nada que Cassandra pueda hacer.
Puede degradar, puede actualizar glibc, o puede degradar, cambiar a lz4 y ejecutar upgradesstables, y luego actualizar de nuevo.
Editar: también es posible que simplemente descarte el antiguo snappy 1.0.4 y elimine 1.0.5.
Edit 2: ¿Es este RHEL 5? Prácticamente todo lo que sea moderno debería ser snappy-1.0.5-compatible.