def add_test_dimensions(cls): super(TestSpillingNoDebugActionDimensions, cls).add_test_dimensions() cls.ImpalaTestMatrix.clear_constraints() cls.ImpalaTestMatrix.add_dimension(create_parquet_dimension('tpch')) # Tests are calibrated so that they can execute and spill with this page size. cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({'default_spillable_buffer_size' : ['256k']}))
def add_test_dimensions(cls): super(TestSpillingDebugActionDimensions, cls).add_test_dimensions() cls.ImpalaTestMatrix.clear_constraints() cls.ImpalaTestMatrix.add_dimension(create_parquet_dimension('tpch')) debug_action_dims = CORE_DEBUG_ACTION_DIMS if cls.exploration_strategy() == 'exhaustive': debug_action_dims = CORE_DEBUG_ACTION_DIMS + EXHAUSTIVE_DEBUG_ACTION_DIMS # Tests are calibrated so that they can execute and spill with this page size. cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'default_spillable_buffer_size': ['256k'], 'debug_action': debug_action_dims, 'mt_dop': [0, 1] })) # Pare down the combinations of mt_dop and debug_action that run to reduce test time. # The MT code path for joins is more complex, so focus testing there. if cls.exploration_strategy() == 'exhaustive': debug_action_dims = CORE_DEBUG_ACTION_DIMS + EXHAUSTIVE_DEBUG_ACTION_DIMS cls.ImpalaTestMatrix.add_constraint(lambda v: v.get_value( 'exec_option')['mt_dop'] == 1 or v.get_value('exec_option')[ 'debug_action'] in CORE_DEBUG_ACTION_DIMS) elif cls.exploration_strategy() == 'core': cls.ImpalaTestMatrix.add_constraint( lambda v: v.get_value('exec_option')['mt_dop'] == 1 or v. get_value('exec_option')['debug_action'] is None)
def add_test_dimensions(cls): super(TestSpillingNoDebugActionDimensions, cls).add_test_dimensions() cls.ImpalaTestMatrix.clear_constraints() cls.ImpalaTestMatrix.add_dimension(create_parquet_dimension('tpch')) # Tests are calibrated so that they can execute and spill with this page size. cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({'default_spillable_buffer_size' : ['256k']}))
def add_test_dimensions(cls): super(TestUdfExecution, cls).add_test_dimensions() cls.TestMatrix.add_dimension( create_exec_option_dimension_from_dict({"disable_codegen" : [False, True], "exec_single_node_rows_threshold" : [0,100], "enable_expr_rewrites" : [False, True]})) # There is no reason to run these tests using all dimensions. cls.TestMatrix.add_dimension(create_uncompressed_text_dimension(cls.get_workload()))
def add_test_dimensions(cls): super(TestCodegen, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension(create_exec_option_dimension_from_dict({ 'exec_single_node_rows_threshold' : [0]})) # No need to run this on all file formats. Run it on text/none, which has stats # computed. cls.ImpalaTestMatrix.add_constraint( lambda v: v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec == 'none')
def add_test_dimensions(cls): cls.ImpalaTestMatrix = ImpalaTestMatrix() cls.ImpalaTestMatrix.add_dimension(ImpalaTestDimension('decimal_type', *TestDecimalCasting.DECIMAL_TYPES_MAP[cls.exploration_strategy()])) cls.ImpalaTestMatrix.add_dimension( ImpalaTestDimension('cast_from', *TestDecimalCasting.CAST_FROM)) cls.ImpalaTestMatrix.add_dimension(create_exec_option_dimension_from_dict( {'decimal_v2': ['false','true']})) cls.iterations = 1
def add_test_dimensions(cls): super(TestPartitionKeyScans, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_constraint(lambda v: v.get_value( 'table_format').file_format not in ('kudu', 'hbase')) cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'mt_dop': [0, 1], 'exec_single_node_rows_threshold': [0] }))
def add_test_dimensions(cls): super(TestCodegen, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension(create_exec_option_dimension_from_dict({ 'exec_single_node_rows_threshold' : [0]})) # No need to run this on all file formats. Run it on text/none, which has stats # computed. cls.ImpalaTestMatrix.add_constraint( lambda v: v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec == 'none')
def add_test_dimensions(cls): super(TestNestedTArraysInSelectList, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_constraint(lambda v: v.get_value( 'table_format').file_format in ['parquet', 'orc']) cls.ImpalaTestMatrix.add_dimension(ImpalaTestDimension('mt_dop', 0, 2)) cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict( {'disable_codegen': ['False', 'True']})) cls.ImpalaTestMatrix.add_dimension(create_client_protocol_dimension())
def add_test_dimensions(cls): super(TestSpillingDebugActionDimensions, cls).add_test_dimensions() cls.ImpalaTestMatrix.clear_constraints() cls.ImpalaTestMatrix.add_dimension(create_parquet_dimension('tpch')) debug_action_dims = CORE_DEBUG_ACTION_DIMS if cls.exploration_strategy() == 'exhaustive': debug_action_dims = CORE_DEBUG_ACTION_DIMS + EXHAUSTIVE_DEBUG_ACTION_DIMS # Tests are calibrated so that they can execute and spill with this page size. cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({'default_spillable_buffer_size' : ['256k'], 'debug_action' : debug_action_dims}))
def add_test_dimensions(cls): super(TestSpillingDebugActionDimensions, cls).add_test_dimensions() cls.ImpalaTestMatrix.clear_constraints() cls.ImpalaTestMatrix.add_dimension(create_parquet_dimension('tpch')) debug_action_dims = CORE_DEBUG_ACTION_DIMS if cls.exploration_strategy() == 'exhaustive': debug_action_dims = CORE_DEBUG_ACTION_DIMS + EXHAUSTIVE_DEBUG_ACTION_DIMS # Tests are calibrated so that they can execute and spill with this page size. cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({'default_spillable_buffer_size' : ['256k'], 'debug_action' : debug_action_dims}))
def add_test_dimensions(cls): super(TestScannersFuzzing, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'abort_on_error' : cls.ABORT_ON_ERROR_VALUES, 'num_nodes' : cls.NUM_NODES_VALUES, 'mem_limit' : cls.MEM_LIMITS})) # TODO: enable for more table formats once they consistently pass the fuzz test. cls.ImpalaTestMatrix.add_constraint(lambda v: v.get_value('table_format').file_format in ('avro', 'parquet') or (v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec in ('none', 'lzo')))
def add_test_dimensions(cls): super(TestScannersFuzzing, cls).add_test_dimensions() cls.TestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'abort_on_error' : cls.ABORT_ON_ERROR_VALUES, 'num_nodes' : cls.NUM_NODES_VALUES, 'mem_limit' : cls.MEM_LIMITS})) # TODO: enable for more table formats once they consistently pass the fuzz test. cls.TestMatrix.add_constraint(lambda v: v.get_value('table_format').file_format in ('avro', 'parquet') or (v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec in ('none', 'lzo')))
def add_test_dimensions(cls): cls.ImpalaTestMatrix = ImpalaTestMatrix() cls.ImpalaTestMatrix.add_dimension( ImpalaTestDimension( 'decimal_type', *TestDecimalCasting.DECIMAL_TYPES_MAP[ cls.exploration_strategy()])) cls.ImpalaTestMatrix.add_dimension( ImpalaTestDimension('cast_from', *TestDecimalCasting.CAST_FROM)) cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict( {'decimal_v2': ['false', 'true']})) cls.iterations = 1
def add_test_dimensions(cls): super(TestDecimalQueries, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'decimal_v2' : ['false', 'true'], 'batch_size' : [0, 1]})) # Hive < 0.11 does not support decimal so we can't run these tests against the other # file formats. # TODO: Enable them on Hive >= 0.11. cls.ImpalaTestMatrix.add_constraint(lambda v:\ (v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec == 'none') or v.get_value('table_format').file_format == 'parquet')
def add_test_dimensions(cls): super(TestSpillingBroadcastJoins, cls).add_test_dimensions() cls.ImpalaTestMatrix.clear_constraints() # Use Kudu because it has 9 input splits for lineitem, hence can have a # higher effective dop than parquet, which only has 3 splits. cls.ImpalaTestMatrix.add_dimension(create_kudu_dimension('tpch')) debug_action_dims = CORE_DEBUG_ACTION_DIMS if cls.exploration_strategy() == 'exhaustive': debug_action_dims = CORE_DEBUG_ACTION_DIMS + EXHAUSTIVE_DEBUG_ACTION_DIMS # Tests are calibrated so that they can execute and spill with this page size. cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({'default_spillable_buffer_size': ['256k'], 'debug_action': debug_action_dims, 'mt_dop': [3]}))
def add_test_dimensions(cls): super(TestDistinctAggregation, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'disable_codegen': [False, True], 'shuffle_distinct_exprs': [False, True] })) if cls.exploration_strategy() == 'core': cls.ImpalaTestMatrix.add_constraint( lambda v: v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec == 'none')
def add_test_dimensions(cls): super(TestDistinctAggregation, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'disable_codegen': [False, True], 'shuffle_distinct_exprs': [False, True] })) if cls.exploration_strategy() == 'core': cls.ImpalaTestMatrix.add_constraint( lambda v: v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec == 'none')
def add_test_dimensions(cls): super(TestDecimalQueries, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'decimal_v2': ['false', 'true'], 'batch_size': [0, 1] })) # Hive < 0.11 does not support decimal so we can't run these tests against the other # file formats. # TODO: Enable them on Hive >= 0.11. cls.ImpalaTestMatrix.add_constraint(lambda v:\ (v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec == 'none') or v.get_value('table_format').file_format == 'parquet')
def add_test_dimensions(cls): super(TestScannersFuzzing, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'abort_on_error' : cls.ABORT_ON_ERROR_VALUES, 'num_nodes' : cls.NUM_NODES_VALUES, 'mem_limit' : cls.MEM_LIMITS, 'debug_action' : cls.DEBUG_ACTION_VALUES})) # TODO: enable for more table formats once they consistently pass the fuzz test. # TODO(IMPALA-6772): enable for ORC formats once a new version after release-1.4.3 # of ORC library is released. cls.ImpalaTestMatrix.add_constraint(lambda v: v.get_value('table_format').file_format in ('avro', 'parquet') or (v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec in ('none', 'lzo')))
def add_test_dimensions(cls): super(TestScannersFuzzing, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'abort_on_error' : cls.ABORT_ON_ERROR_VALUES, 'num_nodes' : cls.NUM_NODES_VALUES, 'mem_limit' : cls.MEM_LIMITS, 'debug_action' : cls.DEBUG_ACTION_VALUES})) # TODO: enable for more table formats once they consistently pass the fuzz test. # TODO(IMPALA-6772): enable for ORC formats once a new version after release-1.4.3 # of ORC library is released. cls.ImpalaTestMatrix.add_constraint(lambda v: v.get_value('table_format').file_format in ('avro', 'parquet') or (v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec in ('none', 'lzo')))
def add_test_dimensions(cls): super(TestDateQueries, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'batch_size': [0, 1], 'disable_codegen': ['false', 'true'], 'disable_codegen_rows_threshold': [0]})) # DATE type is only supported for text fileformat on HDFS and HBASE. cls.ImpalaTestMatrix.add_constraint(lambda v: v.get_value('table_format').file_format in ('text', 'hbase')) # Run these queries through both beeswax and HS2 to get coverage of date returned # via both protocols. cls.ImpalaTestMatrix.add_dimension(create_beeswax_hs2_dimension()) cls.ImpalaTestMatrix.add_constraint(hs2_parquet_constraint)
def add_test_dimensions(cls): super(TestDecimalQueries, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'decimal_v2' : ['false', 'true'], 'batch_size' : [0, 1], 'disable_codegen' : ['false', 'true'], 'disable_codegen_rows_threshold' : [0]})) # Hive < 0.11 does not support decimal so we can't run these tests against the other # file formats. # TODO: Enable them on Hive >= 0.11. cls.ImpalaTestMatrix.add_constraint(lambda v:\ (v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec == 'none') or v.get_value('table_format').file_format in ['parquet', 'orc', 'kudu']) # Run these queries through both beeswax and HS2 to get coverage of decimals returned # via both protocols. cls.ImpalaTestMatrix.add_dimension(create_client_protocol_dimension()) cls.ImpalaTestMatrix.add_constraint(hs2_parquet_constraint)
def add_test_dimensions(cls): super(TestDecimalQueries, cls).add_test_dimensions() cls.ImpalaTestMatrix.add_dimension( create_exec_option_dimension_from_dict({ 'decimal_v2' : ['false', 'true'], 'batch_size' : [0, 1], 'disable_codegen' : ['false', 'true'], 'disable_codegen_rows_threshold' : [0]})) # Hive < 0.11 does not support decimal so we can't run these tests against the other # file formats. # TODO: Enable them on Hive >= 0.11. cls.ImpalaTestMatrix.add_constraint(lambda v:\ (v.get_value('table_format').file_format == 'text' and v.get_value('table_format').compression_codec == 'none') or v.get_value('table_format').file_format in ['parquet', 'orc', 'kudu']) # Run these queries through both beeswax and HS2 to get coverage of decimals returned # via both protocols. cls.ImpalaTestMatrix.add_dimension(create_beeswax_hs2_dimension()) cls.ImpalaTestMatrix.add_constraint(hs2_parquet_constraint)