[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16463376#comment-16463376 ] ASF GitHub Bot commented on HIVE-18864: --- Github user sankarh closed the pull request at: https://github.com/apache/hive/pull/316 > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16397598#comment-16397598 ] Sankar Hariappan commented on HIVE-18864: - Thanks for the review [~ekoifman]! Also, the test failures are irrelevant to the patch and it is committed to master! > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16397472#comment-16397472 ] Eugene Koifman commented on HIVE-18864: --- +1 > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16397469#comment-16397469 ] Sankar Hariappan commented on HIVE-18864: - String s = "select t2w_txnid, t2w_writeid from TXN_TO_WRITE_ID where t2w_txnid <= " + txnHwm + " and t2w_database = " + quoteString(names[0]) + " and t2w_table = " + quoteString(names[1]) + " order by t2w_writeid asc"; In this query, we fetch the list of write ids allocated by txns <= txnHwm... In my example, writeId=7 is allocated by txnId=txnHwm, but 6 was allocated by txnId > txnHwm... So, it won't be listed by this query and hence writeId=, never make it to the open list > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16397460#comment-16397460 ] Eugene Koifman commented on HIVE-18864: --- I'm looking at the original (before this patch) implementation of getValidWriteIdsForTable() and I'm not sure why it's not sufficient. txnHwm is fixed for the duration of the txn. Since we recompute ValidWriteIdList for each statement of a multi-stmt txn, at step 7 in the Description, you'd see writeId=7 as it belongs to txn10 and writeId=6 would be considered invalid because it belongs to txn11 which is not isValid() for txn 10. > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16393745#comment-16393745 ] Hive QA commented on HIVE-18864: Here are the results of testing the latest attachment: https://issues.apache.org/jira/secure/attachment/12913723/HIVE-18864.02.patch {color:green}SUCCESS:{color} +1 due to 1 test(s) being added or modified. {color:red}ERROR:{color} -1 due to 24 failed/errored test(s), 13351 tests executed *Failed tests:* {noformat} TestNegativeCliDriver - did not produce a TEST-*.xml file (likely timed out) (batchId=95)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16393692#comment-16393692 ] Hive QA commented on HIVE-18864: | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || || || || || {color:brown} Prechecks {color} || | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Findbugs executables are not available. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 36s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 6m 18s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 43s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 6s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 39s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 7s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 16s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 42s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 42s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 3s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 43s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} asflicense {color} | {color:red} 0m 12s{color} | {color:red} The patch generated 49 ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 18m 54s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Optional Tests | asflicense javac javadoc findbugs checkstyle compile | | uname | Linux hiveptest-server-upstream 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u1 (2016-09-03) x86_64 GNU/Linux | | Build tool | maven | | Personality | /data/hiveptest/working/yetus_PreCommit-HIVE-Build-9578/dev-support/hive-personality.sh | | git revision | master / b362de3 | | Default Java | 1.8.0_111 | | asflicense | http://104.198.109.242/logs//PreCommit-HIVE-Build-9578/yetus/patch-asflicense-problems.txt | | modules | C: metastore ql standalone-metastore U: . | | Console output | http://104.198.109.242/logs//PreCommit-HIVE-Build-9578/yetus.txt | | Powered by | Apache Yetushttp://yetus.apache.org | This message was automatically generated. > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16390694#comment-16390694 ] Sankar Hariappan commented on HIVE-18864: - All test failures are due to some setup issue which got OOM error. But locally passed. Attaching the same 02.patch again to re-run test. > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16390083#comment-16390083 ] Hive QA commented on HIVE-18864: Here are the results of testing the latest attachment: https://issues.apache.org/jira/secure/attachment/12913364/HIVE-18864.02.patch {color:green}SUCCESS:{color} +1 due to 1 test(s) being added or modified. {color:red}ERROR:{color} -1 due to 101 failed/errored test(s), 13744 tests executed *Failed tests:* {noformat} org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver[acid_table_stats] (batchId=53) org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver[ppd_join5] (batchId=36) org.apache.hadoop.hive.cli.TestMiniLlapCliDriver.testCliDriver[llap_smb] (batchId=152) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[bucket_map_join_tez_empty] (batchId=158) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[insert_values_orig_table_use_metadata] (batchId=168) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[results_cache_1] (batchId=168) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[sysdb] (batchId=161) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[tez_smb_main] (batchId=159) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[vectorization_div0] (batchId=169) org.apache.hadoop.hive.cli.TestNegativeCliDriver.org.apache.hadoop.hive.cli.TestNegativeCliDriver (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[smb_bucketmapjoin] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[smb_mapjoin_14] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[sortmerge_mapjoin_mismatch_1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[special_character_in_tabnames_1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[split_sample_out_of_range] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[split_sample_wrong_format] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[stats_aggregator_error_1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[stats_aggregator_error_2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[stats_publisher_error_1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[strict_join_2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[strict_orderby] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[strict_orderby_2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[strict_pruning_2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_corr_grandparent] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_corr_in_agg] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_in_groupby] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_multiple_cols_in_select] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_notin_implicit_gby] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_scalar_corr_multi_rows] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_scalar_multi_rows] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_select_aggregate] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_select_distinct] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_subquery_chain_exists] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[temp_table_rename] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[touch2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[truncate_bucketed_column] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[truncate_column_seqfile] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[truncate_table_failure3] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[truncate_table_failure5] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udaf_collect_set_unsupported] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_array_contains_wrong2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_assert_true2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_assert_true] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_coalesce] (batchId=95)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16389948#comment-16389948 ] Hive QA commented on HIVE-18864: | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || || || || || {color:brown} Prechecks {color} || | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Findbugs executables are not available. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 31s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 6m 27s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 49s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 3s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 46s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 8s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 20s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 42s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 42s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 8s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 48s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} asflicense {color} | {color:red} 0m 13s{color} | {color:red} The patch generated 49 ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 19m 20s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Optional Tests | asflicense javac javadoc findbugs checkstyle compile | | uname | Linux hiveptest-server-upstream 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u1 (2016-09-03) x86_64 GNU/Linux | | Build tool | maven | | Personality | /data/hiveptest/working/yetus_PreCommit-HIVE-Build-9536/dev-support/hive-personality.sh | | git revision | master / 0cfd4fe | | Default Java | 1.8.0_111 | | asflicense | http://104.198.109.242/logs//PreCommit-HIVE-Build-9536/yetus/patch-asflicense-problems.txt | | modules | C: metastore ql standalone-metastore U: . | | Console output | http://104.198.109.242/logs//PreCommit-HIVE-Build-9536/yetus.txt | | Powered by | Apache Yetushttp://yetus.apache.org | This message was automatically generated. > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16389175#comment-16389175 ] Sankar Hariappan commented on HIVE-18864: - Attached 02.patch with * Redundant code path removed. * Fixed check style issues Test failures in previous build are irrelevant to this patch. > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch, HIVE-18864.02.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388830#comment-16388830 ] Hive QA commented on HIVE-18864: Here are the results of testing the latest attachment: https://issues.apache.org/jira/secure/attachment/12913236/HIVE-18864.01.patch {color:green}SUCCESS:{color} +1 due to 1 test(s) being added or modified. {color:red}ERROR:{color} -1 due to 74 failed/errored test(s), 13879 tests executed *Failed tests:* {noformat} org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver[acid_table_stats] (batchId=53) org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver[authorization_delete] (batchId=83) org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver[ppd_join5] (batchId=36) org.apache.hadoop.hive.cli.TestMiniLlapCliDriver.testCliDriver[llap_smb] (batchId=152) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[bucket_map_join_tez_empty] (batchId=158) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[default_constraint] (batchId=161) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[insert_values_orig_table_use_metadata] (batchId=167) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[results_cache_1] (batchId=168) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[sysdb] (batchId=161) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[tez_smb_1] (batchId=169) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[tez_smb_main] (batchId=159) org.apache.hadoop.hive.cli.TestMiniLlapLocalCliDriver.testCliDriver[vectorization_div0] (batchId=169) org.apache.hadoop.hive.cli.TestNegativeCliDriver.org.apache.hadoop.hive.cli.TestNegativeCliDriver (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[smb_bucketmapjoin] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[smb_mapjoin_14] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[sortmerge_mapjoin_mismatch_1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[stats_aggregator_error_1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[stats_aggregator_error_2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[stats_publisher_error_1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_corr_in_agg] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[subquery_notin_implicit_gby] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[truncate_bucketed_column] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[truncate_column_seqfile] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_format_number_wrong3] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_format_number_wrong5] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_greatest_error_2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_if_not_bool] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_if_wrong_args_len] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_in] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_instr_wrong_args_len] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_invalid] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_likeall_wrong1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_likeany_wrong1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_map_keys_arg_num] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_map_values_arg_type] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_max] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_next_day_error_1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_next_day_error_2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_nonexistent_resource] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_printf_wrong4] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_reflect_neg] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_sort_array_by_wrong1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_sort_array_wrong1] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_sort_array_wrong2] (batchId=95) org.apache.hadoop.hive.cli.TestNegativeCliDriver.testCliDriver[udf_sort_array_wrong3] (batchId=95)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388759#comment-16388759 ] Hive QA commented on HIVE-18864: | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || || || || || {color:brown} Prechecks {color} || | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Findbugs executables are not available. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 42s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 6m 41s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 50s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 59s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 43s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 8s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 2s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 32s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 32s{color} | {color:green} the patch passed {color} | | {color:red}-1{color} | {color:red} checkstyle {color} | {color:red} 0m 39s{color} | {color:red} ql: The patch generated 5 new + 432 unchanged - 0 fixed = 437 total (was 432) {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 39s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} asflicense {color} | {color:red} 0m 13s{color} | {color:red} The patch generated 49 ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 18m 50s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Optional Tests | asflicense javac javadoc findbugs checkstyle compile | | uname | Linux hiveptest-server-upstream 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u1 (2016-09-03) x86_64 GNU/Linux | | Build tool | maven | | Personality | /data/hiveptest/working/yetus_PreCommit-HIVE-Build-9518/dev-support/hive-personality.sh | | git revision | master / abede8e | | Default Java | 1.8.0_111 | | checkstyle | http://104.198.109.242/logs//PreCommit-HIVE-Build-9518/yetus/diff-checkstyle-ql.txt | | asflicense | http://104.198.109.242/logs//PreCommit-HIVE-Build-9518/yetus/patch-asflicense-problems.txt | | modules | C: ql standalone-metastore U: . | | Console output | http://104.198.109.242/logs//PreCommit-HIVE-Build-9518/yetus.txt | | Powered by | Apache Yetushttp://yetus.apache.org | This message was automatically generated. > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388162#comment-16388162 ] ASF GitHub Bot commented on HIVE-18864: --- GitHub user sankarh opened a pull request: https://github.com/apache/hive/pull/316 HIVE-18864: ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction. You can merge this pull request into a Git repository by running: $ git pull https://github.com/sankarh/hive HIVE-18864 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/hive/pull/316.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #316 commit 85afddc2ab46d2f73f1ed7bcdb81105a30f7db8a Author: Sankar HariappanDate: 2018-03-06T17:20:50Z HIVE-18864: ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction. > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID, pull-request-available > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (HIVE-18864) ValidWriteIdList snapshot seems incorrect if obtained after allocating writeId by current transaction.
[ https://issues.apache.org/jira/browse/HIVE-18864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388144#comment-16388144 ] Sankar Hariappan commented on HIVE-18864: - Attached 01.patch with changes in logic to build ValidWriteIdList. # First find writeIdHwm based on txnHwm. This could be the writeId allocated by txnHwm itself or max(writeId) allocated by txnIdtxnHwm, then move them to open/invalid list. ## If any txnId is marked open/aborted in ValidtxnList, then move them also to open/invalid list. Request [~ekoifman] to take a look! > ValidWriteIdList snapshot seems incorrect if obtained after allocating > writeId by current transaction. > -- > > Key: HIVE-18864 > URL: https://issues.apache.org/jira/browse/HIVE-18864 > Project: Hive > Issue Type: Sub-task > Components: Transactions >Affects Versions: 3.0.0 >Reporter: Sankar Hariappan >Assignee: Sankar Hariappan >Priority: Major > Labels: ACID > Fix For: 3.0.0 > > Attachments: HIVE-18864.01.patch > > > For multi-statement txns, it is possible that write on a table happens after > a read. Let's see the below scenario. > # Committed txn=9 writes on table T1 with writeId=5. > # Open txn=10. ValidTxnList(open:null, txn_HWM=10), > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Open txn=11, writes on table T1 with writeid=6. > # Read table T1 from txn=10. ValidWriteIdList(open:null, write_HWM=5). > # Write table T1 from txn=10 with writeId=7. > # Read table T1 from txn=10. {color:#d04437}*ValidWriteIdList(open:null, > write_HWM=7)*. – This read will able to see rows added by txn=11 which is > still open.{color} > {color:#d04437}So, it is needed to rebuild the open/aborted list of > ValidWriteIdList based on txn_HWM. Any writeId allocated by txnId > txn_HWM > should be marked as open. In this example, *ValidWriteIdList(open:6, > write_HWM=7)* should be generated.{color} > {color:#33}cc{color} [~ekoifman], [~thejas] -- This message was sent by Atlassian JIRA (v7.6.3#76005)