Riza Suminto created IMPALA-14078:
-------------------------------------
Summary: Reorganize test_ranger.py to share minicluster
Key: IMPALA-14078
URL: https://issues.apache.org/jira/browse/IMPALA-14078
Project: IMPALA
Issue Type: Task
Reporter: Riza Suminto
test_ranger.py is a custom cluster test consisting of 41 test methods. Each
method will require minicluster restart. With IMPALA-13503, we can reorganize
TestRanger class into 3 separate test class: TestRangerIndependent,
TestRangerLegacyCatalog, and TestRangerLocalCatalog. Both
TestRangerLegacyCatalog and TestRangerLocalCatalog can maintain the same
minicluster without restarting it in between.
The following is the new organization that I propose:
{noformat}
collected 41 items
<Module 'authorization/test_ranger.py'>
<Class 'TestRangerIndependent'>
<Instance '()'>
<Function 'test_xff_ranger_audit'>
<Function 'test_show_grant_hive_privilege'>
<Function 'test_grant_multiple_columns'>
<Function 'test_grant_multiple_columns_consolidate_grant_revoke_requests'>
<Function 'test_alter_owner_hms_event_sync'>
<Function 'test_allow_metadata_update'>
<Function 'test_allow_metadata_update_local_catalog'>
<Function "test_hive_with_ranger_setup[protocol: hs2 | table_format:
text/none | exec_option: {'test_replan': 1, 'batch_size': 0, 'num_nodes': 0,
'disable_codegen_rows_threshold': 0, 'disable_codegen': False,
'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">
<Function "test_grant_revoke_with_role[protocol: hs2 | table_format:
text/none | exec_option: {'test_replan': 1, 'batch_size': 0, 'num_nodes': 0,
'disable_codegen_rows_threshold': 0, 'disable_codegen': False,
'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">
<Function 'test_no_exception_in_show_roles_if_no_roles_in_ranger'>
<Class 'TestRangerLegacyCatalog'>
<Instance '()'>
<Function 'test_grant_revoke_with_catalog_v1'>
<Function 'test_insert_with_catalog_v1'>
<Function 'test_load_data_with_catalog_v1'>
<Function 'test_grant_option'>
<Function 'test_show_grant'>
<Function 'test_grant_revoke_ranger_api'>
<Function 'test_legacy_catalog_ownership'>
<Function 'test_grant_revoke_by_owner_legacy_catalog'>
<Function 'test_unsupported_sql'>
<Function 'test_grant_revoke_invalid_principal'>
<Function 'test_show_functions'>
<Function 'test_select_function'>
<Function 'test_select_function_with_fallback_db'>
<Function "test_column_masking[protocol: hs2 | table_format: text/none |
exec_option: {'test_replan': 1, 'batch_size': 0, 'num_nodes': 0,
'disable_codegen_rows_threshold': 0, 'disable_codegen': False,
'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">
<Function 'test_block_metadata_update'>
<Function "test_masking_overload_coverage[protocol: hs2 | table_format:
text/none | exec_option: {'test_replan': 1, 'batch_size': 0, 'num_nodes': 0,
'disable_codegen_rows_threshold': 0, 'disable_codegen': False,
'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">
<Function "test_row_filtering[protocol: hs2 | table_format: text/none |
exec_option: {'test_replan': 1, 'batch_size': 0, 'num_nodes': 0,
'disable_codegen_rows_threshold': 0, 'disable_codegen': False,
'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">
<Function "test_column_masking_and_row_filtering[protocol: hs2 |
table_format: text/none | exec_option: {'test_replan': 1, 'batch_size': 0,
'num_nodes': 0, 'disable_codegen_rows_threshold': 0, 'disable_codegen': False,
'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">
<Function 'test_iceberg_time_travel_with_masking'>
<Function 'test_convert_table_to_iceberg'>
<Function 'test_iceberg_metadata_table_privileges'>
<Function 'test_profile_protection'>
<Function 'test_select_view_created_by_non_superuser_with_catalog_v1'>
<Class 'TestRangerLocalCatalog'>
<Instance '()'>
<Function 'test_grant_revoke_with_local_catalog'>
<Function 'test_local_catalog_ownership'>
<Function 'test_grant_revoke_by_owner_local_catalog'>
<Function 'test_select_view_created_by_non_superuser_with_local_catalog'>
<Class 'TestRangerColumnMaskingTpchNested'>
<Instance '()'>
<Function "test_tpch_nested_column_masking[protocol: hs2 | table_format:
parquet/none | exec_option: {'test_replan': 1, 'batch_size': 0, 'num_nodes': 0,
'disable_codegen_rows_threshold': 0, 'disable_codegen': True, 'abort_on_error':
1, 'exec_single_node_rows_threshold': 0}]">
<Function "test_tpch_nested_column_masking[protocol: hs2 | table_format:
parquet/none | exec_option: {'test_replan': 1, 'batch_size': 0, 'num_nodes': 0,
'disable_codegen_rows_threshold': 0, 'disable_codegen': False,
'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">
<Class 'TestRangerColumnMaskingComplexTypesInSelectList'>
<Instance '()'>
<Function "test_column_masking_with_structs_in_select_list[protocol: hs2
| table_format: orc/def/block | exec_option: {'test_replan': 1, 'batch_size':
0, 'num_nodes': 0, 'disable_codegen_rows_threshold': 0, 'disable_codegen':
True, 'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">
<Function "test_column_masking_with_structs_in_select_list[protocol: hs2
| table_format: orc/def/block | exec_option: {'test_replan': 1, 'batch_size':
0, 'num_nodes': 0, 'disable_codegen_rows_threshold': 0, 'disable_codegen':
False, 'abort_on_error': 1, 'exec_single_node_rows_threshold': 0}]">{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]