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)