diff --git ql/src/java/org/apache/hadoop/hive/ql/io/RCFile.java ql/src/java/org/apache/hadoop/hive/ql/io/RCFile.java index 2a27676..a7f0564 100644 --- ql/src/java/org/apache/hadoop/hive/ql/io/RCFile.java +++ ql/src/java/org/apache/hadoop/hive/ql/io/RCFile.java @@ -1682,7 +1682,7 @@ protected int nextKeyBuffer() throws IOException { CompressionInputStream deflatFilter = codec.createInputStream( keyDecompressBuffer, keyDecompressor); DataInputStream compressedIn = new DataInputStream(deflatFilter); - deflatFilter.resetState(); + keyDecompressedData.reset(); keyDecompressedData.write(compressedIn, currentKeyLength); keyDataIn.reset(keyDecompressedData.getData(), currentKeyLength); diff --git ql/src/test/queries/clientpositive/rcfile_compress.q ql/src/test/queries/clientpositive/rcfile_compress.q new file mode 100644 index 0000000..3d96d50 --- /dev/null +++ ql/src/test/queries/clientpositive/rcfile_compress.q @@ -0,0 +1,10 @@ +create table src_rc (key string, value string) stored as rcfile; + +SET io.seqfile.compression.type=BLOCK; +SET hive.exec.compress.output=true; +SET mapred.compress.map.output=true; +SET mapred.output.compress=true; +SET mapred.output.compression.codec=org.apache.hadoop.io.compress.BZip2Codec; + +insert into table src_rc select * from src; +select * from src_rc tablesample (10 rows); diff --git ql/src/test/results/clientpositive/rcfile_compress.q.out ql/src/test/results/clientpositive/rcfile_compress.q.out new file mode 100644 index 0000000..4d8de2c --- /dev/null +++ ql/src/test/results/clientpositive/rcfile_compress.q.out @@ -0,0 +1,36 @@ +PREHOOK: query: create table src_rc (key string, value string) stored as rcfile +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@src_rc +POSTHOOK: query: create table src_rc (key string, value string) stored as rcfile +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@src_rc +PREHOOK: query: insert into table src_rc select * from src +PREHOOK: type: QUERY +PREHOOK: Input: default@src +PREHOOK: Output: default@src_rc +POSTHOOK: query: insert into table src_rc select * from src +POSTHOOK: type: QUERY +POSTHOOK: Input: default@src +POSTHOOK: Output: default@src_rc +POSTHOOK: Lineage: src_rc.key SIMPLE [(src)src.FieldSchema(name:key, type:string, comment:default), ] +POSTHOOK: Lineage: src_rc.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] +PREHOOK: query: select * from src_rc tablesample (10 rows) +PREHOOK: type: QUERY +PREHOOK: Input: default@src_rc +#### A masked pattern was here #### +POSTHOOK: query: select * from src_rc tablesample (10 rows) +POSTHOOK: type: QUERY +POSTHOOK: Input: default@src_rc +#### A masked pattern was here #### +238 val_238 +86 val_86 +311 val_311 +27 val_27 +165 val_165 +409 val_409 +255 val_255 +278 val_278 +98 val_98 +484 val_484