Peter Vary created HIVE-22116: --------------------------------- Summary: MaterializedView refresh check might return incorrect result when Compaction is run Key: HIVE-22116 URL: https://issues.apache.org/jira/browse/HIVE-22116 Project: Hive Issue Type: Bug Components: Materialized views Reporter: Peter Vary
Reading the code of TxnHandler.getMaterializationInvalidationInfo I see that we decide on the freshness of the view based on the COMPLETED_TXN_COMPONENTS table. See: [https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/TxnHandler.java#L2021] On the other hand if we run a major compaction we clean up COMPLETED_TXN_COMPONENTS table, so we lose all previous information. We do it in CompactionTxnHandler.markCleaned. See: [https://github.com/apache/hive/blob/master/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/CompactionTxnHandler.java#L382] When the following sequence of events happen we do not refresh the materialized view: - Create Table - Create MV - Refresh MV - Update Table - Start major compaction - Wait until compacted, and cleaned - Select Table -- This message was sent by Atlassian JIRA (v7.6.14#76016)