[ https://issues.apache.org/jira/browse/HIVE-22850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17032226#comment-17032226 ]
Peter Vary commented on HIVE-22850: ----------------------------------- [~rajesh.balamohan]: I think we should prepare ourselves for cases where there are plenty of locks (tables/partitions) in the request. "IN" clause could be a problem for Oracle (as usual :)). > Optimise lock acquisition in TxnHandler > --------------------------------------- > > Key: HIVE-22850 > URL: https://issues.apache.org/jira/browse/HIVE-22850 > Project: Hive > Issue Type: Improvement > Components: Hive > Reporter: Rajesh Balamohan > Priority: Major > Attachments: HIVE-22850.1.patch, HIVE-22850.2.patch, Screenshot > 2020-02-07 at 4.14.51 AM.jpg > > > With concurrent queries, time taken for lock acquisition increases > substantially. As part of lock acquisition in the query, > {{TxnHandler::checkLock}} gets invoked. This involves getting a mutex and > compare the locks being requested for, with that of existing locks in > {{HIVE_LOCKS}} table. > With concurrent queries, time taken to do this check increase and this > significantly increases the time taken for getting mutex for other threads > (due to select for update). In a synthetic workload, it was in the order of > 10+ seconds. This codepath can be optimized when all lock requests are > SHARED_READ. > > > !Screenshot 2020-02-07 at 4.14.51 AM.jpg|width=743,height=348! -- This message was sent by Atlassian Jira (v8.3.4#803005)