Repository: hive Updated Branches: refs/heads/branch-1.2 d1eaa372f -> 8ee9714c7
HIVE-11027: Hive on tez: Bucket map joins fail when hashcode goes negative (Prasanth Jayachandran reviewed by Vikram Dixit) Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/8ee9714c Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/8ee9714c Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/8ee9714c Branch: refs/heads/branch-1.2 Commit: 8ee9714c7e3f8778ee0e72d050df2821ddd36234 Parents: d1eaa37 Author: Prasanth Jayachandran <j.prasant...@gmail.com> Authored: Wed Jun 17 23:02:52 2015 -0700 Committer: Prasanth Jayachandran <j.prasant...@gmail.com> Committed: Wed Jun 17 23:02:52 2015 -0700 ---------------------------------------------------------------------- data/files/sortdp.txt | 32 +++ .../hadoop/hive/ql/exec/ReduceSinkOperator.java | 7 +- .../clientpositive/dynpart_sort_opt_bucketing.q | 73 +++++ .../dynpart_sort_opt_bucketing.q.out | 277 +++++++++++++++++++ 4 files changed, 384 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/8ee9714c/data/files/sortdp.txt ---------------------------------------------------------------------- diff --git a/data/files/sortdp.txt b/data/files/sortdp.txt new file mode 100644 index 0000000..dc7781d --- /dev/null +++ b/data/files/sortdp.txt @@ -0,0 +1,32 @@ +ffff67aef705abda0b89d899e408c28ef230fd0bb2cb0bb23b057e946ba9ca91\N\N2015-01-21 +fffee943d640a7714d09f9bd50dba08a9d0ebdd146655e4642c293a4396cb385\N\N2015-01-21 +fffe069c9bba031c86f1f49ec87bf75d4feb5cc5c7d430282f739ebc4337c673002015-01-21 +fffdc9482d8a88626887d92851951b92e58dba2cfa7e22caeafe98baac4d2a3e042015-01-21 +fffd4906f05ab50dfa41f4ab226e83de981fd8aa4ce0d4f516e7ebf9566a4213\N\N2015-01-21 +fffd37a9ebbef0ed3d3440f7bacd64b823df685c90c827a75a5e9556126a8d0c\N\N2015-01-21 +fffcf74695669d1f444936243869f3586418c6d61d3abb5cc9acb67a3ad7bd2f002015-01-21 +fffce560fc7c69c5185eda181759a62f30f908c55f04291d612039a3ca16357a\N\N2015-01-21 +fffcb494aa56beb88fddb83cc3b0296d417d3ab7782be76c8c12d33e3f3d6a3c\N\N2015-01-21 +fffc8a89a8406ba3ed651fc9248fe9b2afb1ee672999ef75d2d9c42484435bca\N\N2015-01-21 +fffc502293653c4249cdeb8fad4ba2437006b56d527eae844d18e6d6324e424d002015-01-21 +fffc0450ec9b28bae495dffc87a37cc3eea6d2d067ccea8b333185d28847ae2a\N\N2015-01-21 +fffbe3c110c390ec20218e5ad4a026ff515668ed55488b717319b556daa962a1002015-01-21 +fffb1b226efc3cfaac8d73647ce4fa4e82413d67265fb55366ac3a4996518738012015-01-21 +fffad5028e769fdf811eea954785629c064826a5a008253136dbd4f189334827\N\N2015-01-21 +fffad1074d813e6db5c23302a9170fe472c2968844499c90445cbc8559d64fe1082015-01-21 +fff876f50b99444aa7ef901383336299c47f035b87d253283f737d88a05edce8\N\N2015-01-21 +fff66e6646a820cf6d39ba467a735db4ffe4df344256bb1a1cb854086e766810\N\N2015-01-21 +fff56191e39b15f0e2f04984c70152fb1bde2ecba52ff5a73b4c28bf4d58c017002015-01-21 +fff4cabcf8a5f2f8edd27d5d92659ad80e3513d15ac2df7557a82ade5ed80b86\N\N2015-01-21 +fff42e4d4463fa981df990041ba914deaa1d1c1cdcb1547678ab899e34248526012015-01-21 +fff4166378aa9d94cd4f8a9cd543375890a61b4f09a57dbfb31a66b33b3e3fd9\N\N2015-01-21 +fff3474e56ee23c0df629b538268a438d74da36208bdb114bda2da4253f0b4c9\N\N2015-01-21 +fff2de7c5a9929257705996690aa45e5848e57a85eb91f83dfcfa6ac4219ae1b\N\N2015-01-21 +fff201d3ead782d817f222c73cd241df1683cecdb109a5a22b02004b7b228b14\N\N2015-01-21 +fff0fbdf2bf7bfed9ea314bfa7fa14bf179345dde9ea79838f66acd70b943f0b\N\N2015-01-21 +fff06e59d471f90aa055c3089c1d8e380bbb86d5642142ecd0589b544dd44688002015-01-21 +fff06c6e0fd675ebeff09350e6b7a3900115f72341fd353e5e185e8983d10534002015-01-21 +fff03007f38c32085bb4c9389270b965d371168032845555b663b7d4653ec8ee\N\N2015-01-21 +ffefa017a261a0b3e94c2386e0c47a015e2095e5d56b0f4fca2033d9755c9e45012015-01-21 +ffef4b7433ee6008e389a1a4121a82b828123864e563a2afe67dcf29e2b71591\N\N2015-01-21 +ffef34be95399a087af57dd713ca3510377625811bb4232473c1ba223239f284002015-01-21 http://git-wip-us.apache.org/repos/asf/hive/blob/8ee9714c/ql/src/java/org/apache/hadoop/hive/ql/exec/ReduceSinkOperator.java ---------------------------------------------------------------------- diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/ReduceSinkOperator.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/ReduceSinkOperator.java index 859a28f..f1df608 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/ReduceSinkOperator.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/ReduceSinkOperator.java @@ -424,11 +424,8 @@ public class ReduceSinkOperator extends TerminalOperator<ReduceSinkDesc> } } - if (buckNum < 0) { - buckNum = -1 * buckNum; - } - - return buckNum % numBuckets; + // similar to hive's default partitioner, refer DefaultHivePartitioner + return (buckNum & Integer.MAX_VALUE) % numBuckets; } private void populateCachedDistributionKeys(Object row, int index) throws HiveException { http://git-wip-us.apache.org/repos/asf/hive/blob/8ee9714c/ql/src/test/queries/clientpositive/dynpart_sort_opt_bucketing.q ---------------------------------------------------------------------- diff --git a/ql/src/test/queries/clientpositive/dynpart_sort_opt_bucketing.q b/ql/src/test/queries/clientpositive/dynpart_sort_opt_bucketing.q new file mode 100644 index 0000000..95ae6e3 --- /dev/null +++ b/ql/src/test/queries/clientpositive/dynpart_sort_opt_bucketing.q @@ -0,0 +1,73 @@ +set hive.vectorized.execution.enabled=false; + +drop table if exists t1_staging; +create table t1_staging( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) +into 256 buckets stored as textfile; + +load data local inpath '../../data/files/sortdp.txt' overwrite into table t1_staging partition (e='epart'); + +set hive.optimize.sort.dynamic.partition=true; +set hive.exec.dynamic.partition.mode=nonstrict; +set hive.enforce.sorting=true; +set hive.enforce.bucketing=true; + +drop table t1; + +create table t1( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) into 10 buckets stored as textfile; + +insert overwrite table t1 partition(e) select a,b,c,d,'epart' from t1_staging; + +select 'bucket_0'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000000_0; +select 'bucket_2'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000002_0; +select 'bucket_4'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000004_0; +select 'bucket_6'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000006_0; +select 'bucket_8'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000008_0; + +set hive.optimize.sort.dynamic.partition=false; +set hive.exec.dynamic.partition.mode=nonstrict; +set hive.enforce.sorting=true; +set hive.enforce.bucketing=true; + +-- disable sorted dynamic partition optimization to make sure the results are correct +drop table t1; + +create table t1( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) into 10 buckets stored as textfile; + +insert overwrite table t1 partition(e) select a,b,c,d,'epart' from t1_staging; + +select 'bucket_0'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000000_0; +select 'bucket_2'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000002_0; +select 'bucket_4'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000004_0; +select 'bucket_6'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000006_0; +select 'bucket_8'; +dfs -cat ${hiveconf:hive.metastore.warehouse.dir}/t1/e=epart/000008_0; http://git-wip-us.apache.org/repos/asf/hive/blob/8ee9714c/ql/src/test/results/clientpositive/dynpart_sort_opt_bucketing.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/dynpart_sort_opt_bucketing.q.out b/ql/src/test/results/clientpositive/dynpart_sort_opt_bucketing.q.out new file mode 100644 index 0000000..3992db7 --- /dev/null +++ b/ql/src/test/results/clientpositive/dynpart_sort_opt_bucketing.q.out @@ -0,0 +1,277 @@ +PREHOOK: query: drop table if exists t1_staging +PREHOOK: type: DROPTABLE +POSTHOOK: query: drop table if exists t1_staging +POSTHOOK: type: DROPTABLE +PREHOOK: query: create table t1_staging( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) +into 256 buckets stored as textfile +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@t1_staging +POSTHOOK: query: create table t1_staging( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) +into 256 buckets stored as textfile +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@t1_staging +PREHOOK: query: load data local inpath '../../data/files/sortdp.txt' overwrite into table t1_staging partition (e='epart') +PREHOOK: type: LOAD +#### A masked pattern was here #### +PREHOOK: Output: default@t1_staging +POSTHOOK: query: load data local inpath '../../data/files/sortdp.txt' overwrite into table t1_staging partition (e='epart') +POSTHOOK: type: LOAD +#### A masked pattern was here #### +POSTHOOK: Output: default@t1_staging +POSTHOOK: Output: default@t1_staging@e=epart +PREHOOK: query: drop table t1 +PREHOOK: type: DROPTABLE +POSTHOOK: query: drop table t1 +POSTHOOK: type: DROPTABLE +PREHOOK: query: create table t1( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) into 10 buckets stored as textfile +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@t1 +POSTHOOK: query: create table t1( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) into 10 buckets stored as textfile +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@t1 +PREHOOK: query: insert overwrite table t1 partition(e) select a,b,c,d,'epart' from t1_staging +PREHOOK: type: QUERY +PREHOOK: Input: default@t1_staging +PREHOOK: Input: default@t1_staging@e=epart +PREHOOK: Output: default@t1 +POSTHOOK: query: insert overwrite table t1 partition(e) select a,b,c,d,'epart' from t1_staging +POSTHOOK: type: QUERY +POSTHOOK: Input: default@t1_staging +POSTHOOK: Input: default@t1_staging@e=epart +POSTHOOK: Output: default@t1@e=epart +POSTHOOK: Lineage: t1 PARTITION(e=epart).a SIMPLE [(t1_staging)t1_staging.FieldSchema(name:a, type:string, comment:null), ] +POSTHOOK: Lineage: t1 PARTITION(e=epart).b SIMPLE [(t1_staging)t1_staging.FieldSchema(name:b, type:int, comment:null), ] +POSTHOOK: Lineage: t1 PARTITION(e=epart).c SIMPLE [(t1_staging)t1_staging.FieldSchema(name:c, type:int, comment:null), ] +POSTHOOK: Lineage: t1 PARTITION(e=epart).d SIMPLE [(t1_staging)t1_staging.FieldSchema(name:d, type:string, comment:null), ] +PREHOOK: query: select 'bucket_0' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_0' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_0 +fffdc9482d8a88626887d92851951b92e58dba2cfa7e22caeafe98baac4d2a3e042015-01-21 +fffd4906f05ab50dfa41f4ab226e83de981fd8aa4ce0d4f516e7ebf9566a4213\N\N2015-01-21 +fffd37a9ebbef0ed3d3440f7bacd64b823df685c90c827a75a5e9556126a8d0c\N\N2015-01-21 +fffce560fc7c69c5185eda181759a62f30f908c55f04291d612039a3ca16357a\N\N2015-01-21 +fffc502293653c4249cdeb8fad4ba2437006b56d527eae844d18e6d6324e424d002015-01-21 +fffad5028e769fdf811eea954785629c064826a5a008253136dbd4f189334827\N\N2015-01-21 +fff3474e56ee23c0df629b538268a438d74da36208bdb114bda2da4253f0b4c9\N\N2015-01-21 +fff2de7c5a9929257705996690aa45e5848e57a85eb91f83dfcfa6ac4219ae1b\N\N2015-01-21 +PREHOOK: query: select 'bucket_2' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_2' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_2 +fffcf74695669d1f444936243869f3586418c6d61d3abb5cc9acb67a3ad7bd2f002015-01-21 +fffbe3c110c390ec20218e5ad4a026ff515668ed55488b717319b556daa962a1002015-01-21 +fff876f50b99444aa7ef901383336299c47f035b87d253283f737d88a05edce8\N\N2015-01-21 +fff66e6646a820cf6d39ba467a735db4ffe4df344256bb1a1cb854086e766810\N\N2015-01-21 +fff4166378aa9d94cd4f8a9cd543375890a61b4f09a57dbfb31a66b33b3e3fd9\N\N2015-01-21 +fff06e59d471f90aa055c3089c1d8e380bbb86d5642142ecd0589b544dd44688002015-01-21 +fff03007f38c32085bb4c9389270b965d371168032845555b663b7d4653ec8ee\N\N2015-01-21 +PREHOOK: query: select 'bucket_4' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_4' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_4 +fffc0450ec9b28bae495dffc87a37cc3eea6d2d067ccea8b333185d28847ae2a\N\N2015-01-21 +fffad1074d813e6db5c23302a9170fe472c2968844499c90445cbc8559d64fe1082015-01-21 +fff56191e39b15f0e2f04984c70152fb1bde2ecba52ff5a73b4c28bf4d58c017002015-01-21 +fff201d3ead782d817f222c73cd241df1683cecdb109a5a22b02004b7b228b14\N\N2015-01-21 +fff0fbdf2bf7bfed9ea314bfa7fa14bf179345dde9ea79838f66acd70b943f0b\N\N2015-01-21 +PREHOOK: query: select 'bucket_6' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_6' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_6 +ffff67aef705abda0b89d899e408c28ef230fd0bb2cb0bb23b057e946ba9ca91\N\N2015-01-21 +fffe069c9bba031c86f1f49ec87bf75d4feb5cc5c7d430282f739ebc4337c673002015-01-21 +fffcb494aa56beb88fddb83cc3b0296d417d3ab7782be76c8c12d33e3f3d6a3c\N\N2015-01-21 +fffb1b226efc3cfaac8d73647ce4fa4e82413d67265fb55366ac3a4996518738012015-01-21 +fff4cabcf8a5f2f8edd27d5d92659ad80e3513d15ac2df7557a82ade5ed80b86\N\N2015-01-21 +fff42e4d4463fa981df990041ba914deaa1d1c1cdcb1547678ab899e34248526012015-01-21 +ffefa017a261a0b3e94c2386e0c47a015e2095e5d56b0f4fca2033d9755c9e45012015-01-21 +ffef34be95399a087af57dd713ca3510377625811bb4232473c1ba223239f284002015-01-21 +PREHOOK: query: select 'bucket_8' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_8' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_8 +fffee943d640a7714d09f9bd50dba08a9d0ebdd146655e4642c293a4396cb385\N\N2015-01-21 +fffc8a89a8406ba3ed651fc9248fe9b2afb1ee672999ef75d2d9c42484435bca\N\N2015-01-21 +fff06c6e0fd675ebeff09350e6b7a3900115f72341fd353e5e185e8983d10534002015-01-21 +ffef4b7433ee6008e389a1a4121a82b828123864e563a2afe67dcf29e2b71591\N\N2015-01-21 +PREHOOK: query: -- disable sorted dynamic partition optimization to make sure the results are correct +drop table t1 +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@t1 +PREHOOK: Output: default@t1 +POSTHOOK: query: -- disable sorted dynamic partition optimization to make sure the results are correct +drop table t1 +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@t1 +POSTHOOK: Output: default@t1 +PREHOOK: query: create table t1( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) into 10 buckets stored as textfile +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:default +PREHOOK: Output: default@t1 +POSTHOOK: query: create table t1( +a string, +b int, +c int, +d string) +partitioned by (e string) +clustered by(a) +sorted by(a desc) into 10 buckets stored as textfile +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:default +POSTHOOK: Output: default@t1 +PREHOOK: query: insert overwrite table t1 partition(e) select a,b,c,d,'epart' from t1_staging +PREHOOK: type: QUERY +PREHOOK: Input: default@t1_staging +PREHOOK: Input: default@t1_staging@e=epart +PREHOOK: Output: default@t1 +POSTHOOK: query: insert overwrite table t1 partition(e) select a,b,c,d,'epart' from t1_staging +POSTHOOK: type: QUERY +POSTHOOK: Input: default@t1_staging +POSTHOOK: Input: default@t1_staging@e=epart +POSTHOOK: Output: default@t1@e=epart +POSTHOOK: Lineage: t1 PARTITION(e=epart).a SIMPLE [(t1_staging)t1_staging.FieldSchema(name:a, type:string, comment:null), ] +POSTHOOK: Lineage: t1 PARTITION(e=epart).b SIMPLE [(t1_staging)t1_staging.FieldSchema(name:b, type:int, comment:null), ] +POSTHOOK: Lineage: t1 PARTITION(e=epart).c SIMPLE [(t1_staging)t1_staging.FieldSchema(name:c, type:int, comment:null), ] +POSTHOOK: Lineage: t1 PARTITION(e=epart).d SIMPLE [(t1_staging)t1_staging.FieldSchema(name:d, type:string, comment:null), ] +PREHOOK: query: select 'bucket_0' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_0' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_0 +fffdc9482d8a88626887d92851951b92e58dba2cfa7e22caeafe98baac4d2a3e042015-01-21 +fffd4906f05ab50dfa41f4ab226e83de981fd8aa4ce0d4f516e7ebf9566a4213\N\N2015-01-21 +fffd37a9ebbef0ed3d3440f7bacd64b823df685c90c827a75a5e9556126a8d0c\N\N2015-01-21 +fffce560fc7c69c5185eda181759a62f30f908c55f04291d612039a3ca16357a\N\N2015-01-21 +fffc502293653c4249cdeb8fad4ba2437006b56d527eae844d18e6d6324e424d002015-01-21 +fffad5028e769fdf811eea954785629c064826a5a008253136dbd4f189334827\N\N2015-01-21 +fff3474e56ee23c0df629b538268a438d74da36208bdb114bda2da4253f0b4c9\N\N2015-01-21 +fff2de7c5a9929257705996690aa45e5848e57a85eb91f83dfcfa6ac4219ae1b\N\N2015-01-21 +PREHOOK: query: select 'bucket_2' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_2' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_2 +fffcf74695669d1f444936243869f3586418c6d61d3abb5cc9acb67a3ad7bd2f002015-01-21 +fffbe3c110c390ec20218e5ad4a026ff515668ed55488b717319b556daa962a1002015-01-21 +fff876f50b99444aa7ef901383336299c47f035b87d253283f737d88a05edce8\N\N2015-01-21 +fff66e6646a820cf6d39ba467a735db4ffe4df344256bb1a1cb854086e766810\N\N2015-01-21 +fff4166378aa9d94cd4f8a9cd543375890a61b4f09a57dbfb31a66b33b3e3fd9\N\N2015-01-21 +fff06e59d471f90aa055c3089c1d8e380bbb86d5642142ecd0589b544dd44688002015-01-21 +fff03007f38c32085bb4c9389270b965d371168032845555b663b7d4653ec8ee\N\N2015-01-21 +PREHOOK: query: select 'bucket_4' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_4' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_4 +fffc0450ec9b28bae495dffc87a37cc3eea6d2d067ccea8b333185d28847ae2a\N\N2015-01-21 +fffad1074d813e6db5c23302a9170fe472c2968844499c90445cbc8559d64fe1082015-01-21 +fff56191e39b15f0e2f04984c70152fb1bde2ecba52ff5a73b4c28bf4d58c017002015-01-21 +fff201d3ead782d817f222c73cd241df1683cecdb109a5a22b02004b7b228b14\N\N2015-01-21 +fff0fbdf2bf7bfed9ea314bfa7fa14bf179345dde9ea79838f66acd70b943f0b\N\N2015-01-21 +PREHOOK: query: select 'bucket_6' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_6' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_6 +ffff67aef705abda0b89d899e408c28ef230fd0bb2cb0bb23b057e946ba9ca91\N\N2015-01-21 +fffe069c9bba031c86f1f49ec87bf75d4feb5cc5c7d430282f739ebc4337c673002015-01-21 +fffcb494aa56beb88fddb83cc3b0296d417d3ab7782be76c8c12d33e3f3d6a3c\N\N2015-01-21 +fffb1b226efc3cfaac8d73647ce4fa4e82413d67265fb55366ac3a4996518738012015-01-21 +fff4cabcf8a5f2f8edd27d5d92659ad80e3513d15ac2df7557a82ade5ed80b86\N\N2015-01-21 +fff42e4d4463fa981df990041ba914deaa1d1c1cdcb1547678ab899e34248526012015-01-21 +ffefa017a261a0b3e94c2386e0c47a015e2095e5d56b0f4fca2033d9755c9e45012015-01-21 +ffef34be95399a087af57dd713ca3510377625811bb4232473c1ba223239f284002015-01-21 +PREHOOK: query: select 'bucket_8' +PREHOOK: type: QUERY +PREHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +POSTHOOK: query: select 'bucket_8' +POSTHOOK: type: QUERY +POSTHOOK: Input: _dummy_database@_dummy_table +#### A masked pattern was here #### +bucket_8 +fffee943d640a7714d09f9bd50dba08a9d0ebdd146655e4642c293a4396cb385\N\N2015-01-21 +fffc8a89a8406ba3ed651fc9248fe9b2afb1ee672999ef75d2d9c42484435bca\N\N2015-01-21 +fff06c6e0fd675ebeff09350e6b7a3900115f72341fd353e5e185e8983d10534002015-01-21 +ffef4b7433ee6008e389a1a4121a82b828123864e563a2afe67dcf29e2b71591\N\N2015-01-21