Repository: incubator-impala Updated Branches: refs/heads/master aafcda0c9 -> ca2baa5d4
IMPALA-4914,IMPALA-4999: remove flaky TestSpillStress The test does not work as intended and would likely not provide very good coverage of the different spilling paths, because it only runs a single simple query. The stress test (tests/stress/concurrent_select.py) provides much better coverage. test_mem_usage_scaling.py probably also provides better coverage that TestSpillStress in its current form. Change-Id: Ie792d64dc88f682066c13e559918d72d76b31b71 Reviewed-on: http://gerrit.cloudera.org:8080/6437 Reviewed-by: Michael Brown <[email protected]> Tested-by: Impala Public Jenkins Project: http://git-wip-us.apache.org/repos/asf/incubator-impala/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-impala/commit/ca2baa5d Tree: http://git-wip-us.apache.org/repos/asf/incubator-impala/tree/ca2baa5d Diff: http://git-wip-us.apache.org/repos/asf/incubator-impala/diff/ca2baa5d Branch: refs/heads/master Commit: ca2baa5d401f64b99fbb8f80e8ec1bdc1b3d52ce Parents: aafcda0 Author: Tim Armstrong <[email protected]> Authored: Mon Mar 20 11:22:56 2017 -0700 Committer: Impala Public Jenkins <[email protected]> Committed: Mon Mar 20 23:07:50 2017 +0000 ---------------------------------------------------------------------- tests/custom_cluster/test_spilling.py | 75 ------------------------------ 1 file changed, 75 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-impala/blob/ca2baa5d/tests/custom_cluster/test_spilling.py ---------------------------------------------------------------------- diff --git a/tests/custom_cluster/test_spilling.py b/tests/custom_cluster/test_spilling.py index df69a67..774e83f 100644 --- a/tests/custom_cluster/test_spilling.py +++ b/tests/custom_cluster/test_spilling.py @@ -20,84 +20,9 @@ from copy import deepcopy from tests.common.custom_cluster_test_suite import CustomClusterTestSuite from tests.common.test_dimensions import ( - ImpalaTestDimension, create_single_exec_option_dimension, create_parquet_dimension) - -class TestSpillStress(CustomClusterTestSuite): - - # IMPALA-4914 part 3 TODO: In the agg_stress workload file used below, it's implied - # that the workload needs to run concurrently. This appears to attempt to try to do - # that by using TEST_IDS and NUM_ITERATIONS and assuming multiple instances of the - # test will run concurrently. But custom cluster tests are explicitly never run - # concurrently. If this test ought to run concurrently, then new test infra is needed - # to achieve that. - - @classmethod - def get_workload(self): - return 'targeted-stress' - - @classmethod - def setup_class(cls): - # Don't do anything expensive if we're not running exhaustively for this workload. - # This check comes first. - if cls.exploration_strategy() != 'exhaustive': - pytest.skip('runs only in exhaustive') - # Since test_spill_stress below runs TEST_IDS * NUM_ITERATIONS times, but we only - # need Impala to start once, it's inefficient to use - # @CustomClusterTestSuite.with_args() to restart Impala every time. Instead, start - # Impala here, once. We start impalad before we try to make connections to it. - # - # Start with 256KB buffers to reduce data size required to force spilling. - cls._start_impala_cluster([ - '--impalad_args=--"read_size=262144"', - '--catalogd_args="--load_catalog_in_background=false"']) - # This super() call leapfrogs CustomClusterTestSuite.setup_class() and calls - # ImpalaTestSuite.setup_class(). This is done because this is an atypical custom - # cluster test that doesn't restart impalad per test method, but it still needs - # self.client (etc.) set up. IMPALA-4914 part 3 would address this. - # This happens last because we need impalad started above before we try to establish - # connections to it. - super(CustomClusterTestSuite, cls).setup_class() - - @classmethod - def teardown_class(cls): - # This teardown leapfrog matches the setup leapfrog above, for equivalent reasons. - # CustomClusterTestSuite.teardown_class() overrides ImpalaTestSuite.teardown_class() - # and is a no-op. ImpalaTestSuite.teardown_class() stops client connections. The - # *next* custom cluster test that py.test chooses to run is responsible for - # restarting impalad. - super(CustomClusterTestSuite, cls).teardown_class() - - def setup_method(self, method): - # We don't need CustomClusterTestSuite.setup_method() or teardown_method() here - # since we're not doing per-test method restart of Impala. - pass - - def teardown_method(self, method): - pass - - @classmethod - def add_test_dimensions(cls): - super(TestSpillStress, cls).add_test_dimensions() - cls.ImpalaTestMatrix.add_constraint(lambda v:\ - v.get_value('table_format').file_format == 'text') - # Each client will get a different test id. - # TODO: this test takes extremely long so only run on exhaustive. It would - # be good to configure it so we can run some version on core. - TEST_IDS = xrange(0, 3) - NUM_ITERATIONS = [1] - cls.ImpalaTestMatrix.add_dimension(ImpalaTestDimension('test_id', *TEST_IDS)) - cls.ImpalaTestMatrix.add_dimension( - ImpalaTestDimension('iterations', *NUM_ITERATIONS)) - - @pytest.mark.stress - def test_spill_stress(self, vector): - # Number of times to execute each query - for i in xrange(vector.get_value('iterations')): - self.run_test_case('agg_stress', vector) - class TestSpilling(CustomClusterTestSuite): @classmethod def get_workload(self):
