2011-08-02 19 views
5

Estoy usando Cassandra 0.7.4. Me he estado rompiendo la cabeza durante la mayor parte de hoy para hacer una importación simple con json2sstable util. Estoy en el clúster de prueba.Cassandra json2sstable Excepción del puntero nulo

I create a simple keyspace KS1. 
I create a simple CF mycf. 
I insert a row with only one column like set mycf[key1][col1]='col1value' 

Exporto lo anterior con sstable2json util a un archivo llamado. Pero cuando intento lo contrario (importar), siempre da NPE.

C:\>json2sstable -K KS1 -c mycf C:/out C:/var/lib/cassandra/data/kS1/mycf-f-2-Data.db 
java.lang.NullPointerException 
     at org.apache.cassandra.db.ColumnFamily.create(ColumnFamily.java:67) 
     at org.apache.cassandra.db.ColumnFamily.create(ColumnFamily.java:61) 
     at org.apache.cassandra.tools.SSTableImport.importJson(SSTableImport.java:194) 
     at org.apache.cassandra.tools.SSTableImport.main(SSTableImport.java:421) 
ERROR: null 

Miré el código fuente. Hay una afirmación donde se comprueba que CFMetaData no es nulo. Esto obviamente dice que es nulo, pero ¿por qué?

cualquier sugerencia muy apreciada.

Respuesta

3

Ok esto es lo que hice - No pude borrar la publicación, así que solo grabé lo que hice. Hice una nueva instalación de Cassandra 0.7.4. Hice los mismos pasos de nuevo. Esta vez acabo de cambiar un poco el valor de la marca de tiempo de la columna (un aumento aleatorio). El NPE se había ido pero dio un error de memoria insuficiente. Leí here si obtiene el error OOM, puede resolverlo cambiando la configuración de compactación en cassandra.yaml. Cambió eso y funciona ahora. Realmente no sé cuál de los pasos solucionó el problema.

Cuestiones relacionadas