Stamatis Zampetakis created HIVE-29791:
------------------------------------------

             Summary: Run multi-database (slow) metastore tests selectively
                 Key: HIVE-29791
                 URL: https://issues.apache.org/jira/browse/HIVE-29791
             Project: Hive
          Issue Type: Test
          Components: Testing Infrastructure
            Reporter: Stamatis Zampetakis


Certain tests in the repository are running for all supported databases using 
Docker containers. These tests usually require a significant amount of time and 
for the majority of changes they are not expected to fail often.

One such example is 
[TestSchemaToolForMetastore|https://ci.hive.apache.org/job/hive-precommit/job/master/3026/testReport/org.apache.hadoop.hive.metastore.tools.schematool/TestSchemaToolForMetastore/]
 taking 25 minutes in CI runs.

To speed up test execution and reduce CI resource consumption I suggest to run 
the tests:
 * on changes under the hive-standalone-metastore module;
 * on every commit on master

In other words, we should skip running this demanding tests on every kind of 
pull request and focus mostly on those that are more likely to break them.

Since all tests are going to run when the change is merged in master we are not 
losing in test coverage but there is slight higher risk of breaking master. 
From my perspective, the risk is acceptable given the amount of resources and 
time that we could save by selectively running the tests.

With this logic in place we could expand the test coverage for  
TestHMSColumnDescriptorReuse by default is running only on Derby at the moment.

There is already MetastoreCheckinTest annotation/category we could exploit. 
However, given that the latter applies on many tests at the moment we may have 
to revisit which tests should fall into this category or introduce a new one.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to