[ 
https://issues.apache.org/jira/browse/HIVE-10972?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14582041#comment-14582041
 ] 

Aihua Xu commented on HIVE-10972:
---------------------------------

I think we have another issue in ZooKeeperHiveLockManager.java, in which when 
locking exclusively on an object we should also check if the children are 
locked.

The test passed before, is because we always locked the current database 
before. If we do {{use default; lock table lockneg2.tstsrcpart shared; lock 
database lockneg2 exclusive;}}, it will allow to do so which is not correct. 

HIVE-10984 has been filed to get it fixed. I will leave the test failure as it 
is. 

> DummyTxnManager always locks the current database in shared mode, which is 
> incorrect.
> -------------------------------------------------------------------------------------
>
>                 Key: HIVE-10972
>                 URL: https://issues.apache.org/jira/browse/HIVE-10972
>             Project: Hive
>          Issue Type: Bug
>          Components: Locking
>    Affects Versions: 2.0.0
>            Reporter: Aihua Xu
>            Assignee: Aihua Xu
>         Attachments: HIVE-10972.patch
>
>
> In DummyTxnManager [line 163 | 
> http://grepcode.com/file/repo1.maven.org/maven2/co.cask.cdap/hive-exec/0.13.0/org/apache/hadoop/hive/ql/lockmgr/DummyTxnManager.java#163],
>  it always locks the current database. 
> That is not correct since the current database can be "db1", and the query 
> can be "select * from db2.tb1", which will lock db1 unnecessarily.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to