> On okt. 17, 2019, 11:10 de, Peter Vary wrote: > > ql/src/java/org/apache/hadoop/hive/ql/Driver.java > > Line 992 (original), 1003 (patched) > > <https://reviews.apache.org/r/71589/diff/3/?file=2169305#file2169305line1007> > > > > Why is this a List of Pairs, why not just a Map? Is the order important? > > Denys Kuzmenko wrote: > Have no idea :) Originally I refactored it to the Map and than reverted > back to List of Pairs as it required some more refactoring in Driver. If you > are raising same concern, probably makes sence to change this.
Here or in an follow-up might worth to clean-up -> This seems very strange for me too - Peter ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/71589/#review218258 ----------------------------------------------------------- On okt. 17, 2019, 8:41 de, Denys Kuzmenko wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/71589/ > ----------------------------------------------------------- > > (Updated okt. 17, 2019, 8:41 de) > > > Review request for hive, Laszlo Pinter and Peter Vary. > > > Bugs: HIVE-21114 > https://issues.apache.org/jira/browse/HIVE-21114 > > > Repository: hive-git > > > Description > ------- > > With HIVE-21036 we have a way to indicate that a txn is read only. > We should (at least in auto-commit mode) determine if the single stmt is a > read and mark the txn accordingly. > Then we can optimize TxnHandler.commitTxn() so that it doesn't do any checks > in write_set etc. > > TxnHandler.commitTxn() already starts with lockTransactionRecord(stmt, txnid, > TXN_OPEN) so it can read the txn type in the same SQL stmt. > > HiveOperation only has QUERY, which includes Insert and Select, so this > requires figuring out how to determine if a query is a SELECT. By the time > Driver.openTransaction(); is called, we have already parsed the query so > there should be a way to know if the statement only reads. > > For multi-stmt txns (once these are supported) we should allow user to > indicate that a txn is read-only and then not allow any statements that can > make modifications in this txn. This should be a different jira. > > > Diffs > ----- > > ql/src/java/org/apache/hadoop/hive/ql/Driver.java 91910d1c0c > ql/src/java/org/apache/hadoop/hive/ql/io/AcidUtils.java fcf499d53a > ql/src/java/org/apache/hadoop/hive/ql/lockmgr/DbTxnManager.java 943aa383bb > ql/src/java/org/apache/hadoop/hive/ql/lockmgr/DummyTxnManager.java > ac813c8288 > ql/src/java/org/apache/hadoop/hive/ql/lockmgr/HiveTxnManager.java > 1c53426966 > ql/src/test/org/apache/hadoop/hive/ql/lockmgr/TestDbTxnManager.java > cc86afedbf > ql/src/test/org/apache/hadoop/hive/ql/parse/TestParseUtils.java > PRE-CREATION > > > Diff: https://reviews.apache.org/r/71589/diff/3/ > > > Testing > ------- > > Unit + manual test > > > File Attachments > ---------------- > > HIVE-21114.1.patch > > https://reviews.apache.org/media/uploaded/files/2019/10/10/0929ed4a-17be-4098-8c61-0819a30613fd__HIVE-21114.1.patch > > > Thanks, > > Denys Kuzmenko > >