This is an automated email from the ASF dual-hosted git repository.

michaelsmith pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git


The following commit(s) were added to refs/heads/master by this push:
     new 0b619962e IMPALA-14011: Skip 
test_no_hms_event_incremental_refresh_transactional_table on new Hive versions
0b619962e is described below

commit 0b619962e6536f80ed5197653f59dffb304976f0
Author: stiga-huang <[email protected]>
AuthorDate: Tue Sep 16 19:22:35 2025 +0800

    IMPALA-14011: Skip 
test_no_hms_event_incremental_refresh_transactional_table on new Hive versions
    
    The feature of hms_event_incremental_refresh_transactional_table is
    already mature that it has been enabled for years. We'd like to
    deprecate the feature of turning it off. However, for older Hive
    versions like Apache Hive 3 that don't provide sufficient APIs for
    Impala to process COMMIT_TXN events, users can still turn this off.
    
    This patch skips
    test_no_hms_event_incremental_refresh_transactional_table when running
    on CDP Hive.
    
    To run the test on Apache Hive 3, adjust the test to create ACID table
    using tblproperties instead of "create transactional table" statement.
    
    Tests:
     - Ran the test on CDP Hive and Apache Hive 3.
    
    Change-Id: I93379e5331072bec1d3a4769f7d7ab59431478ee
    Reviewed-on: http://gerrit.cloudera.org:8080/23435
    Reviewed-by: Impala Public Jenkins <[email protected]>
    Tested-by: Impala Public Jenkins <[email protected]>
---
 tests/common/skip.py                               | 5 +++++
 tests/custom_cluster/test_events_custom_configs.py | 7 +++++--
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/tests/common/skip.py b/tests/common/skip.py
index 69637dcf4..a2fcb0737 100644
--- a/tests/common/skip.py
+++ b/tests/common/skip.py
@@ -276,6 +276,11 @@ class SkipIfApacheHive():
       reason="Apache Hive 3.1 or older version do not support DataConnector")
 
 
+class SkipIfCdpHive():
+  deprecated_feature = pytest.mark.skipif(
+      not IS_APACHE_HIVE, reason="Deprecated feature on CDP Hive support")
+
+
 class SkipIfExploration:
   """Exposes decorators as methods so that tests can be skipped based on 
exploration
      strategy"""
diff --git a/tests/custom_cluster/test_events_custom_configs.py 
b/tests/custom_cluster/test_events_custom_configs.py
index 1bbb0047f..5020e63f6 100644
--- a/tests/custom_cluster/test_events_custom_configs.py
+++ b/tests/custom_cluster/test_events_custom_configs.py
@@ -30,7 +30,7 @@ from tests.common.custom_cluster_test_suite import 
CustomClusterTestSuite
 from tests.common.impala_connection import ERROR, FINISHED
 from tests.common.impala_test_suite import ImpalaTestSuite
 from tests.common.parametrize import UniqueDatabase
-from tests.common.skip import SkipIf, SkipIfFS
+from tests.common.skip import SkipIf, SkipIfFS, SkipIfCdpHive
 from tests.common.test_dimensions import add_exec_option_dimension
 from tests.util.acid_txn import AcidTxn
 from tests.util.hive_utils import HiveDbWrapper
@@ -1339,6 +1339,7 @@ class 
TestEventProcessingCustomConfigs(TestEventProcessingCustomConfigsBase):
     # self.assert_catalogd_log_contains("INFO", "Not added ABORTED write id 1 
since it's "
     #    + "not opened and might already be cleaned up")
 
+  @SkipIfCdpHive.deprecated_feature
   @CustomClusterTestSuite.with_args(
       
catalogd_args="--hms_event_incremental_refresh_transactional_table=false",
       statestored_args=STATESTORED_ARGS)
@@ -1352,7 +1353,9 @@ class 
TestEventProcessingCustomConfigs(TestEventProcessingCustomConfigsBase):
       part_create = " partitioned by (p int)" if partitioned else ""
       part_insert = " partition (p = 1)" if partitioned else ""
 
-      create_stmt = "create transactional table {} (i int){}".format(fq_tbl, 
part_create)
+      create_stmt = ("create table {} (i int){} stored as ORC "
+                     "tblproperties ('transactional'='true',"
+                     "'transactional_properties'='default')").format(fq_tbl, 
part_create)
       self.run_stmt_in_hive(create_stmt)
       EventProcessorUtils.wait_for_event_processing(self)
       # Wait for StatestoreD to propagate the update.

Reply via email to