Support TimeUUID in CassandraStorage
------------------------------------
Key: CASSANDRA-3327
URL: https://issues.apache.org/jira/browse/CASSANDRA-3327
Project: Cassandra
Issue Type: Bug
Components: Contrib
Affects Versions: 0.8.6
Environment: Cassandra 0.8.6 Build #348 (CASSANDRA-2777 +
CASSANDRA-2810)
Reporter: Manuel Kreutz
Cassandra CLI:
{code}
grunt> raw = LOAD 'cassandra://TEST/CF'
>> USING CassandraStorage()
>> AS (
>> key:chararray,
>> columns:bag {
>> column:tuple(
>> name,
>> value
>> )
>> });
grunt> describe raw;
raw: {key: chararray,columns: {(name: bytearray,value: bytearray)}}
log_test =
FOREACH raw
GENERATE
(CHARARRAY) key,
flatten(columns);
grunt> DUMP log_test;
{code}
Returns:
{code}
org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1066: Unable to open
iterator for alias log_test. Backend error : Unexpected data type
java.util.UUID found in stream. Note only standard Pig type is supported when
you output from UDF/LoadFunc
at org.apache.pig.PigServer.openIterator(PigServer.java:890)
at
org.apache.pig.tools.grunt.GruntParser.processDump(GruntParser.java:655)
at
org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:303)
at
org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:188)
at
org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:164)
at org.apache.pig.tools.grunt.Grunt.run(Grunt.java:67)
at org.apache.pig.Main.run(Main.java:487)
at org.apache.pig.Main.main(Main.java:108)
Caused by: java.lang.RuntimeException: Unexpected data type java.util.UUID
found in stream. Note only standard Pig type is supported when you output from
UDF/LoadFunc
at org.apache.pig.data.BinInterSedes.writeDatum(BinInterSedes.java:478)
at org.apache.pig.data.BinInterSedes.writeTuple(BinInterSedes.java:542)
at org.apache.pig.data.BinInterSedes.writeDatum(BinInterSedes.java:357)
at
org.apache.pig.impl.io.InterRecordWriter.write(InterRecordWriter.java:73)
at org.apache.pig.impl.io.InterStorage.putNext(InterStorage.java:87)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigOutputFormat$PigRecordWriter.write(PigOutputFormat.java:138)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigOutputFormat$PigRecordWriter.write(PigOutputFormat.java:97)
at
org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.write(MapTask.java:498)
at
org.apache.hadoop.mapreduce.TaskInputOutputContext.write(TaskInputOutputContext.java:80)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapOnly$Map.collect(PigMapOnly.java:48)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapBase.runPipeline(PigMapBase.java:263)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapBase.map(PigMapBase.java:256)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigMapBase.map(PigMapBase.java:58)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:144)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:621)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:305)
{code}
According to driftx on IRC the setTupleValue function in CassandraStorage needs
to handle the uuid case and cast it to a DataByteArray.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira