hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eugene Koifman (JIRA)" <>
Subject [jira] [Commented] (HIVE-17683) Annotate Query Plan with locking information
Date Fri, 25 May 2018 19:12:00 GMT


Eugene Koifman commented on HIVE-17683:

Hmm - very good question.  We don't acquire locks on anything that would correspond to an
intermediate node in the plan like Join or group by.

Lock manager can lock database/table/partition objects but FileSink may write multiple partitions
(dynamic partition insert) and a Scan can read many partitions.  And I don't know if Database
is represented in the QueryPlan at all...

I think you need experiment with this a bit and see what locks you get for various query plans
to see if there is a reasonable way to represent lock info as part of the plan.  It may turn
out one doesn't map very well to the other.  In that case maybe you should consider writing
something like "show locks <sql>" or "explain locks <sql>" that just dumps LockRequest

cc [~alangates]


> Annotate Query Plan with locking information
> --------------------------------------------
>                 Key: HIVE-17683
>                 URL:
>             Project: Hive
>          Issue Type: New Feature
>          Components: Transactions
>            Reporter: Eugene Koifman
>            Assignee: Igor Kryvenko
>            Priority: Critical
> Explore if it's possible to add info about what locks will be asked for to the query
> Lock acquisition (for Acid Lock Manager) is done in DbTxnManager.acquireLocks() which
is called once the query starts running.  Would need to refactor that.

This message was sent by Atlassian JIRA

View raw message