You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "Tim Armstrong (JIRA)" <ji...@apache.org> on 2018/06/11 19:48:00 UTC

[jira] [Resolved] (IMPALA-2714) metadata.test_ddl.TestDdlStatements.test_functions_ddl fails on repeated runs

     [ https://issues.apache.org/jira/browse/IMPALA-2714?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tim Armstrong resolved IMPALA-2714.
-----------------------------------
    Resolution: Fixed

commit ab9e54bc4298549048b1935837e8e818d5b980ce
Author: Alex Behm <al...@cloudera.com>
Date:   Tue May 10 01:01:32 2016 -0700

    IMPALA-3491: Use unique database fixture in test_ddl.py.
    
    Adds new parametrization to the unique database fixture:
    - num_dbs: allows creating multiple unique databases at once;
      the 2nd, 3rd, etc. datbase name is generated by appending
      "2", "3", etc., to the first database name
    - sync_ddl: allows creating the dabatases(s) with sync_ddl
      which is needed by most tests in test_ddl.py
    
    Testing: I ran debug/core and debug/exhaustive on HDFS and
    core/debug on S3. Also ran the test locally in a loop on
    exhaustive.
    
    Change-Id: Idf667dd5e960768879c019e2037cf48ad4e4241b
    Reviewed-on: http://gerrit.cloudera.org:8080/4155
    Reviewed-by: Alex Behm <al...@cloudera.com>
    Tested-by: Internal Jenkins



> metadata.test_ddl.TestDdlStatements.test_functions_ddl fails on repeated runs
> -----------------------------------------------------------------------------
>
>                 Key: IMPALA-2714
>                 URL: https://issues.apache.org/jira/browse/IMPALA-2714
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Infrastructure
>    Affects Versions: Impala 2.3.0
>            Reporter: Harrison Sheinblatt
>            Priority: Minor
>              Labels: test_issue
>
> The test fails when run a second time without restarting impalad because it uses the default database and doesn't clean up udfs.
> {noformat}
> metadata.test_ddl.TestDdlStatements.test_functions_ddl[exec_option: {'batch_size': 0, 'num_nodes': 0, 'sync_ddl': 0, 'disable_codegen': False, 'abort_on_error': 1, 'exec_single_node_rows_threshold': 0} | table_format: text/none] (from pytest)
> {noformat}
> Test log:
> {noformat}
> Error Message
> assert Comparing QueryTestResults (expected vs actual):   'INT','fn()' == 'INT','fn()'   None != 'STRING','udf_update_test_create1()'   None != 'STRING','udf_update_test_create2()'   None != 'STRING','udf_update_test_drop()'   Number of rows returned (expected vs actual): 1 != 4
> Stacktrace
> metadata/test_ddl.py:347: in test_functions_ddl
>     multiple_impalad=self._use_multiple_impalad(vector))
> common/impala_test_suite.py:235: in run_test_case
>     pytest.config.option.update_results)
> common/test_result_verifier.py:345: in verify_raw_results
>     VERIFIER_MAP[verifier](expected, actual)
> common/test_result_verifier.py:197: in verify_query_result_is_equal
>     assert expected_results == actual_results
> E   assert Comparing QueryTestResults (expected vs actual):
> E     'INT','fn()' == 'INT','fn()'
> E     None != 'STRING','udf_update_test_create1()'
> E     None != 'STRING','udf_update_test_create2()'
> E     None != 'STRING','udf_update_test_drop()'
> E     Number of rows returned (expected vs actual): 1 != 4
> Standard Error
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `ddl_test_db` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `ddl_purge_db` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `alter_table_test_db` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `alter_table_test_db2` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `function_ddl_test` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `udf_test` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `data_src_test` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `truncate_table_test_db` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `test_db` cascade;
> -- executing against localhost:21000
> use default;
> SET sync_ddl=1;
> -- executing against localhost:21000
> drop database if exists `alter_purge_db` cascade;
> MainThread: Starting new HTTP connection (1): 0.0.0.0
> MainThread: Starting new HTTP connection (1): 0.0.0.0
> MainThread: Starting new HTTP connection (1): 0.0.0.0
> -- connecting to: localhost:21000
> SET sync_ddl=1;
> -- executing against localhost:21000
> create database function_ddl_test location '/test-warehouse/function_ddl_test.db';
> -- closing connection to: localhost:21000
> -- executing against localhost:21000
> use function_ddl_test;
> SET batch_size=0;
> SET num_nodes=0;
> SET sync_ddl=0;
> SET disable_codegen=False;
> SET abort_on_error=1;
> SET exec_single_node_rows_threshold=0;
> -- executing against localhost:21000
> drop function if exists default.fn();
> -- executing against localhost:21000
> drop function if exists function_ddl_test.fn();
> -- executing against localhost:21000
> drop function if exists function_ddl_test.fn(int);
> -- executing against localhost:21000
> drop function if exists function_ddl_test.fn(int, string);
> -- executing against localhost:21000
> drop function if exists function_ddl_test.fn(string, int);
> -- executing against localhost:21000
> drop function if exists function_ddl_test.fn2(int);
> -- executing against localhost:21000
> drop function if exists function_ddl_test.fn2(int, string);
> -- executing against localhost:21000
> drop function if exists function_ddl_test.fn_var_arg(int...);
> -- executing against localhost:21000
> drop function if exists function_ddl_test.agg_fn(int);
> -- executing against localhost:21000
> drop function if exists function_ddl_test.agg_fn(int, string);
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> show functions in function_ddl_test;
> -- executing against localhost:21000
> show aggregate functions in function_ddl_test;
> -- executing against localhost:21000
> create function default.fn() RETURNS int
> LOCATION '/test-warehouse/libTestUdfs.so' SYMBOL='Fn';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create function function_ddl_test.fn() RETURNS int
> LOCATION '/test-warehouse/libTestUdfs.so' SYMBOL='Fn';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create function function_ddl_test.fn(int) RETURNS double
> LOCATION '/test-warehouse/libTestUdfs.so' SYMBOL='Fn';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create function function_ddl_test.fn(int, string) RETURNS int
> LOCATION '/test-warehouse/libTestUdfs.so' SYMBOL='Fn';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create function function_ddl_test.fn(string, int) RETURNS int
> LOCATION '/test-warehouse/libTestUdfs.so' SYMBOL='Fn';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create function function_ddl_test.fn2(int) RETURNS int
> LOCATION '/test-warehouse/libTestUdfs.so' SYMBOL='Fn2';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create function function_ddl_test.fn2(int, string) RETURNS int
> LOCATION '/test-warehouse/libTestUdfs.so' SYMBOL='Fn2';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create function function_ddl_test.fn_var_arg(int...) RETURNS int
> LOCATION '/test-warehouse/libTestUdfs.so' SYMBOL='VarSum';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create aggregate function function_ddl_test.agg_fn(int) RETURNS bigint
> LOCATION '/test-warehouse/libudasample.so' UPDATE_FN='CountUpdate';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> create aggregate function function_ddl_test.agg_fn(int, string) RETURNS int
> LOCATION '/test-warehouse/libTestUdas.so' UPDATE_FN='TwoArgUpdate';
> MainThread: No results found. Skipping verification
> -- executing against localhost:21000
> show functions in default;
> MainThread: Comparing QueryTestResults (expected vs actual):
> 'INT','fn()' == 'INT','fn()'
> None != 'STRING','udf_update_test_create1()'
> None != 'STRING','udf_update_test_create2()'
> None != 'STRING','udf_update_test_drop()'
> Number of rows returned (expected vs actual): 1 != 4
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org