[ https://issues.apache.org/jira/browse/HIVE-24433?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Naresh P R updated HIVE-24433: ------------------------------ Description: PartionKeyValue is getting converted into lowerCase in below 2 places. [https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L2728] [https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L2851] Because of which TXN_COMPONENTS & HIVE_LOCKS tables are not having entries from proper partition values. When query completes, the entry moves from TXN_COMPONENTS to COMPLETED_TXN_COMPONENTS. Hive AutoCompaction will not recognize the partition & considers it as invalid partition {code:java} create table abc(name string) partitioned by(city string) stored as orc tblproperties('transactional'='true'); insert into abc partition(city='Bangalore') values('aaa'); {code} Example entry in COMPLETED_TXN_COMPONENTS {noformat} +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ | CTC_TXNID | CTC_DATABASE | CTC_TABLE | CTC_PARTITION | CTC_TIMESTAMP | CTC_WRITEID | CTC_UPDATE_DELETE | +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ | 2 | default | abc | city=bangalore | 2020-11-25 09:26:59 | 1 | N | +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ {noformat} AutoCompaction fails to get triggered with below error {code:java} 2020-11-25T09:35:10,364 INFO [Thread-9]: compactor.Initiator (Initiator.java:run(98)) - Checking to see if we should compact default.abc.city=bangalore 2020-11-25T09:35:10,380 INFO [Thread-9]: compactor.Initiator (Initiator.java:run(155)) - Can't find partition default.compaction_test.city=bangalore, assuming it has been dropped and moving on{code} I verifed below 4 SQL's with my PR, those all produced correct PartitionKeyValue i.e, COMPLETED_TXN_COMPONENTS.CTC_PARTITION="city=Bangalore" {code:java} insert into table abc PARTITION(CitY='Bangalore') values('Dan'); insert overwrite table abc partition(CiTy='Bangalore') select Name from abc; update table abc set Name='xy' where CiTy='Bangalore'; delete from abc where CiTy='Bangalore';{code} was: PartionKeyValue is getting converted into lowerCase in below 2 places. [https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L2728] [https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L2851] Because of which TXN_COMPONENTS & HIVE_LOCKS tables are not having entries from proper partition values. When query completes, the entry moves from TXN_COMPONENTS to COMPLETED_TXN_COMPONENTS. Hive AutoCompaction will not recognize the partition & considers it as invalid partition {code:java} create table abc(name string) partitioned by(city string) stored as orc tblproperties('transactional'='true'); insert into abc partition(city='Bangalore') values('aaa'); {code} Example entry in COMPLETED_TXN_COMPONENTS {noformat} +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ | CTC_TXNID | CTC_DATABASE | CTC_TABLE | CTC_PARTITION | CTC_TIMESTAMP | CTC_WRITEID | CTC_UPDATE_DELETE | +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ | 2 | default | abc | city=bangalore | 2020-11-25 09:26:59 | 1 | N | +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ {noformat} AutoCompaction fails to get triggered with below error {code:java} 2020-11-25T09:35:10,364 INFO [Thread-9]: compactor.Initiator (Initiator.java:run(98)) - Checking to see if we should compact default.abc.city=bangalore 2020-11-25T09:35:10,380 INFO [Thread-9]: compactor.Initiator (Initiator.java:run(155)) - Can't find partition default.compaction_test.city=bhubaneshwar, assuming it has been dropped and moving on{code} I verifed below 4 SQL's with my PR, those all produced correct PartitionKeyValue i.e, COMPLETED_TXN_COMPONENTS.CTC_PARTITION="city=Bangalore" {code:java} insert into table abc PARTITION(CitY='Bangalore') values('Dan'); insert overwrite table abc partition(CiTy='Bangalore') select Name from abc; update table abc set Name='xy' where CiTy='Bangalore'; delete from abc where CiTy='Bangalore';{code} > AutoCompaction is not getting triggered for CamelCase Partition Values > ---------------------------------------------------------------------- > > Key: HIVE-24433 > URL: https://issues.apache.org/jira/browse/HIVE-24433 > Project: Hive > Issue Type: Bug > Reporter: Naresh P R > Assignee: Naresh P R > Priority: Major > Labels: pull-request-available > Time Spent: 20m > Remaining Estimate: 0h > > PartionKeyValue is getting converted into lowerCase in below 2 places. > [https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L2728] > [https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L2851] > Because of which TXN_COMPONENTS & HIVE_LOCKS tables are not having entries > from proper partition values. > When query completes, the entry moves from TXN_COMPONENTS to > COMPLETED_TXN_COMPONENTS. Hive AutoCompaction will not recognize the > partition & considers it as invalid partition > {code:java} > create table abc(name string) partitioned by(city string) stored as orc > tblproperties('transactional'='true'); > insert into abc partition(city='Bangalore') values('aaa'); > {code} > Example entry in COMPLETED_TXN_COMPONENTS > {noformat} > +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ > | CTC_TXNID | CTC_DATABASE | CTC_TABLE | CTC_PARTITION | > CTC_TIMESTAMP | CTC_WRITEID | CTC_UPDATE_DELETE | > +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ > | 2 | default | abc | city=bangalore | 2020-11-25 09:26:59 > | 1 | N | > +-----------+--------------+--------------------+-------------------+---------------------+-------------+-------------------+ > {noformat} > > AutoCompaction fails to get triggered with below error > {code:java} > 2020-11-25T09:35:10,364 INFO [Thread-9]: compactor.Initiator > (Initiator.java:run(98)) - Checking to see if we should compact > default.abc.city=bangalore > 2020-11-25T09:35:10,380 INFO [Thread-9]: compactor.Initiator > (Initiator.java:run(155)) - Can't find partition > default.compaction_test.city=bangalore, assuming it has been dropped and > moving on{code} > I verifed below 4 SQL's with my PR, those all produced correct > PartitionKeyValue > i.e, COMPLETED_TXN_COMPONENTS.CTC_PARTITION="city=Bangalore" > {code:java} > insert into table abc PARTITION(CitY='Bangalore') values('Dan'); > insert overwrite table abc partition(CiTy='Bangalore') select Name from abc; > update table abc set Name='xy' where CiTy='Bangalore'; > delete from abc where CiTy='Bangalore';{code} -- This message was sent by Atlassian Jira (v8.3.4#803005)