You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by ta...@apache.org on 2017/03/20 23:23:07 UTC
incubator-impala git commit: IMPALA-4914,
IMPALA-4999: remove flaky TestSpillStress
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 <mi...@cloudera.com>
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 <ta...@cloudera.com>
Authored: Mon Mar 20 11:22:56 2017 -0700
Committer: Impala Public Jenkins <im...@gerrit.cloudera.org>
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):