You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Gopal Vijayaraghavan (Jira)" <ji...@apache.org> on 2019/12/17 23:10:00 UTC

[jira] [Updated] (HIVE-22654) ACID: Allow TxnHandler::checkLock to chunk partitions by 1000

     [ https://issues.apache.org/jira/browse/HIVE-22654?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gopal Vijayaraghavan updated HIVE-22654:
----------------------------------------
    Description: 
The following loop can end up with too many entries within the IN clause throwing.

https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L4428

{code:java}
        // If any of the partition requests are null, then I need to pull all
        // partition locks for this table.
        sawNull = false;
        strings.clear();
        for (LockInfo info : locksBeingChecked) {
          if (info.partition == null) {
            sawNull = true;
            break;
          } else {
            strings.add(info.partition);
          }
        } 
{code}

{code}
2019-12-17T04:28:57,991 ERROR [pool-8-thread-143]: metastore.RetryingHMSHandler (RetryingHMSHandler.java:invokeInternal(201)) - MetaException(message:Unable to update transaction database java.sql.SQLSyntaxErrorException: ORA-01795: maximum number of expressions in a list is 1000
{code}

  was:
The following loop can end up with too many entries within the IN clause throwing 

{code:java}
        // If any of the partition requests are null, then I need to pull all
        // partition locks for this table.
        sawNull = false;
        strings.clear();
        for (LockInfo info : locksBeingChecked) {
          if (info.partition == null) {
            sawNull = true;
            break;
          } else {
            strings.add(info.partition);
          }
        } 
{code}

{code}
2019-12-17T04:28:57,991 ERROR [pool-8-thread-143]: metastore.RetryingHMSHandler (RetryingHMSHandler.java:invokeInternal(201)) - MetaException(message:Unable to update transaction database java.sql.SQLSyntaxErrorException: ORA-01795: maximum number of expressions in a list is 1000
{code}


> ACID: Allow TxnHandler::checkLock to chunk partitions by 1000 
> --------------------------------------------------------------
>
>                 Key: HIVE-22654
>                 URL: https://issues.apache.org/jira/browse/HIVE-22654
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Gopal Vijayaraghavan
>            Priority: Major
>
> The following loop can end up with too many entries within the IN clause throwing.
> https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L4428
> {code:java}
>         // If any of the partition requests are null, then I need to pull all
>         // partition locks for this table.
>         sawNull = false;
>         strings.clear();
>         for (LockInfo info : locksBeingChecked) {
>           if (info.partition == null) {
>             sawNull = true;
>             break;
>           } else {
>             strings.add(info.partition);
>           }
>         } 
> {code}
> {code}
> 2019-12-17T04:28:57,991 ERROR [pool-8-thread-143]: metastore.RetryingHMSHandler (RetryingHMSHandler.java:invokeInternal(201)) - MetaException(message:Unable to update transaction database java.sql.SQLSyntaxErrorException: ORA-01795: maximum number of expressions in a list is 1000
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)