Samrat Deb created HIVE-26024: --------------------------------- Summary: Metastore RDS CPU spike in DDL commands () Key: HIVE-26024 URL: https://issues.apache.org/jira/browse/HIVE-26024 Project: Hive Issue Type: Bug Reporter: Samrat Deb
We are experiencing sudden spike in the cpu utilization of hive-metastore rds, whenever there is `ALTER TABLE ` queries in hive. There is sudden spike in the rds cpu (attached screenshot ) This leads to non-responsive metastore service , and effects other jobs/queries Meta Information -> Hive version - 3.1.2 -> Hive metastore version - 3.1.2 -> Hadoop version - 3.2.2 -> DB used for metastore - Postgres 42.2.18 Observations :- 1) On running DDL queries like "ALTER TABLE " commands it fails in around 120s approx with the error message ```while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. null``` though it has returned error , we observed that even if the query has returned an error, the query still keeps running on the metastore via querying pg_stat_activity table . 2) the spike in metastore CPU is mostly related to partition stats collection, Tried running the queries via a hive cli in debug mode and noticed these logs when the CPU was spiking logs ``` 2022-02-21T08:33:22,876 DEBUG [<object_id> main] metastore.ObjectStore: Open transaction: count = 3, isActive = true at: org.apache.hadoop.hive.metastore.ObjectStore.removeUnusedColumnDescriptor(ObjectStore.java:4232) org.apache.hadoop.hive.metastore.ObjectStore.alterPartition(ObjectStore.java:4129) sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source) 2022-02-21T08:33:22,876 DEBUG [<object_id> main] metastore.ObjectStore: execute removeUnusedColumnDescriptor 2022-02-21T08:33:24,482 DEBUG [70618618-a5a0-497a-abc3-6aacf390024e main] metastore.ObjectStore: Commit transaction: count = 2, isactive true at: org.apache.hadoop.hive.metastore.ObjectStore.removeUnusedColumnDescriptor(ObjectStore.java:4245) org.apache.hadoop.hive.metastore.ObjectStore.alterPartition(ObjectStore.java:4129) sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source) 2022-02-21T08:33:24,482 DEBUG [<object_id> main] metastore.ObjectStore: successfully deleted a CD in removeUnusedColumnDescriptor 2022-02-21T08:33:24,483 DEBUG [<object_id> main] metastore.ObjectStore: Commit transaction: count = 1, isactive true at: org.apache.hadoop.hive.metastore.ObjectStore.alterPartition(ObjectStore.java:4131) sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 2022-02-21T08:33:24,483 DEBUG [<object_id> main] metastore.ObjectStore: Open transaction: count = 2, isActive = true at: org.apache.hadoop.hive.metastore.ObjectStore.alterPartition(ObjectStore.java:4127) sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 2022-02-21T08:33:24,483 DEBUG [<object_id> main] metastore.ObjectStore: Open transaction: count = 3, isActive = true at:``` -- This message was sent by Atlassian Jira (v8.20.1#820001)