Henning Kropp created CASSANDRA-6180: ----------------------------------------
Summary: NPE in CqlRecordWriter: Related to AbstractCassandraStorage handling null values Key: CASSANDRA-6180 URL: https://issues.apache.org/jira/browse/CASSANDRA-6180 Project: Cassandra Issue Type: Bug Components: Hadoop Environment: Pig, CqlStorage Reporter: Henning Kropp I encountered an issue with the {{CqlStorage}} and it's handling of null values. The {{CqlRecordWriter}} throws an NPE when a value is null. I found a related ticket CASSANDRA-5885 and applied the there state fix to the {{AbstractCassandraStorage}}. Instead of converting {{null}} values to {{ByteBuffer.wrap(new byte[0])}} {{AbstractCassandraStorage}} returns {{(ByteBuffer)null}} This issue can be reproduced with the attached files: {{test_null.cql}}, {{test_null_data}}, {{null_test.pig}} A fix can be found in the attached patch. {code} java.io.IOException: java.lang.NullPointerException at org.apache.cassandra.hadoop.cql3.CqlRecordWriter$RangeClient.run(CqlRecordWriter.java:248) Caused by: java.lang.NullPointerException at org.apache.thrift.protocol.TBinaryProtocol.writeBinary(TBinaryProtocol.java:194) at org.apache.cassandra.thrift.Cassandra$execute_prepared_cql3_query_args.write(Cassandra.java:41253) at org.apache.thrift.TServiceClient.sendBase(TServiceClient.java:63) at org.apache.cassandra.thrift.Cassandra$Client.send_execute_prepared_cql3_query(Cassandra.java:1683) at org.apache.cassandra.thrift.Cassandra$Client.execute_prepared_cql3_query(Cassandra.java:1673) at org.apache.cassandra.hadoop.cql3.CqlRecordWriter$RangeClient.run(CqlRecordWriter.java:232) {code} -- This message was sent by Atlassian JIRA (v6.1#6144)