mirror of
https://github.com/apache/impala.git
synced 2026-02-02 15:00:38 -05:00
IcebergDeleteNode and IcebergDeleteBuild classes are based on
PartitionedHashJoin counterparts. The actual "join" part of the node is
optimized, while others are kept very similarly, to be able to integrate
features of PartitionedHashJoin if needed (partitioning, spilling).
ICEBERG_DELETE_JOIN is added as a join operator which is used only by
IcebergDeleteNode node.
IcebergDeleteBuild processes the data from the relevant delete files and
stores them in a {file_path: ordered row id vector} hash map.
IcebergDeleteNode tracks the processed file and progresses through the
row id vector parallel to the probe batch to check if a row is deleted
or hashes the probe row's file path and uses binary search to find the
closest row id if it is needed for the check.
Testing:
- Duplicated related planner tests to run both with new operator and
hash join
- Added a dimension for e2e tests to run both with new operator and
hash join
- Added new multiblock tests to verify assumptions used in new
operator to optimize probing
- Added new test with BATCH_SIZE=2 to verify in/out batch handling
with new operator
Change-Id: I024a61573c83bda5584f243c879d9ff39dd2dcfa
Reviewed-on: http://gerrit.cloudera.org:8080/19850
Reviewed-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
27 KiB
27 KiB
| 1 | # Table level constraints: |
|---|---|
| 2 | # Allows for defining constraints on which file formats to generate for an individual |
| 3 | # table. The table name should match the base table name defined in the schema template |
| 4 | # file. |
| 5 | table_name:stringids, constraint:restrict_to, table_format:hbase/none/none |
| 6 | table_name:hbasecolumnfamilies, constraint:restrict_to, table_format:hbase/none/none |
| 7 | table_name:insertalltypesagg, constraint:restrict_to, table_format:hbase/none/none |
| 8 | table_name:alltypessmallbinary, constraint:restrict_to, table_format:hbase/none/none |
| 9 | table_name:insertalltypesaggbinary, constraint:restrict_to, table_format:hbase/none/none |
| 10 | table_name:hbasealltypeserror, constraint:restrict_to, table_format:hbase/none/none |
| 11 | table_name:hbasealltypeserrornonulls, constraint:restrict_to, table_format:hbase/none/none |
| 12 | table_name:alltypes_date_partition, constraint:restrict_to, table_format:text/none/none |
| 13 | table_name:alltypesinsert, constraint:restrict_to, table_format:text/none/none |
| 14 | table_name:alltypes_promoted, constraint:restrict_to, table_format:orc/def/block |
| 15 | table_name:alltypes_deleted_rows, constraint:restrict_to, table_format:orc/def/block |
| 16 | table_name:stringpartitionkey, constraint:restrict_to, table_format:text/none/none |
| 17 | table_name:alltypesnopart_insert, constraint:restrict_to, table_format:text/none/none |
| 18 | table_name:insert_overwrite_nopart, constraint:restrict_to, table_format:text/none/none |
| 19 | table_name:insert_overwrite_partitioned, constraint:restrict_to, table_format:text/none/none |
| 20 | table_name:insert_string_partitioned, constraint:restrict_to, table_format:text/none/none |
| 21 | table_name:alltypesinsert, constraint:restrict_to, table_format:parquet/none/none |
| 22 | table_name:alltypesnopart_insert, constraint:restrict_to, table_format:parquet/none/none |
| 23 | table_name:alltypesinsert, constraint:restrict_to, table_format:text/none/none |
| 24 | table_name:alltypesnopart_insert, constraint:restrict_to, table_format:text/none/none |
| 25 | table_name:insert_overwrite_nopart, constraint:restrict_to, table_format:text/none/none |
| 26 | table_name:insert_overwrite_partitioned, constraint:restrict_to, table_format:text/none/none |
| 27 | table_name:insert_string_partitioned, constraint:restrict_to, table_format:text/none/none |
| 28 | table_name:alltypesinsert, constraint:restrict_to, table_format:parquet/none/none |
| 29 | table_name:alltypesnopart_insert, constraint:restrict_to, table_format:parquet/none/none |
| 30 | table_name:insert_overwrite_nopart, constraint:restrict_to, table_format:parquet/none/none |
| 31 | table_name:insert_overwrite_partitioned, constraint:restrict_to, table_format:parquet/none/none |
| 32 | table_name:insert_string_partitioned, constraint:restrict_to, table_format:parquet/none/none |
| 33 | table_name:old_rcfile_table, constraint:restrict_to, table_format:rc/none/none |
| 34 | table_name:bad_text_gzip, constraint:restrict_to, table_format:text/gzip/block |
| 35 | table_name:bad_seq_snap, constraint:restrict_to, table_format:seq/snap/block |
| 36 | table_name:bad_avro_snap_strings, constraint:restrict_to, table_format:avro/snap/block |
| 37 | table_name:bad_avro_snap_floats, constraint:restrict_to, table_format:avro/snap/block |
| 38 | table_name:bad_avro_decimal_schema, constraint:restrict_to, table_format:avro/snap/block |
| 39 | table_name:bad_avro_date_out_of_range, constraint:restrict_to, table_format:avro/snap/block |
| 40 | table_name:hive2_bad_avro_date_pre_gregorian, constraint:restrict_to, table_format:avro/snap/block |
| 41 | table_name:hive3_avro_date_pre_gregorian, constraint:restrict_to, table_format:avro/snap/block |
| 42 | table_name:bad_parquet, constraint:restrict_to, table_format:parquet/none/none |
| 43 | table_name:bad_parquet_strings_negative_len, constraint:restrict_to, table_format:parquet/none/none |
| 44 | table_name:bad_parquet_strings_out_of_bounds, constraint:restrict_to, table_format:parquet/none/none |
| 45 | table_name:bad_parquet_decimals, constraint:restrict_to, table_format:parquet/none/none |
| 46 | table_name:bad_magic_number, constraint:restrict_to, table_format:parquet/none/none |
| 47 | table_name:bad_metadata_len, constraint:restrict_to, table_format:parquet/none/none |
| 48 | table_name:bad_dict_page_offset, constraint:restrict_to, table_format:parquet/none/none |
| 49 | table_name:bad_compressed_size, constraint:restrict_to, table_format:parquet/none/none |
| 50 | table_name:alltypesagg_hive_13_1, constraint:restrict_to, table_format:parquet/none/none |
| 51 | table_name:kite_required_fields, constraint:restrict_to, table_format:parquet/none/none |
| 52 | table_name:bad_column_metadata, constraint:restrict_to, table_format:parquet/none/none |
| 53 | table_name:lineitem_multiblock, constraint:restrict_to, table_format:parquet/none/none |
| 54 | table_name:lineitem_sixblocks, constraint:restrict_to, table_format:parquet/none/none |
| 55 | table_name:lineitem_multiblock_one_row_group, constraint:restrict_to, table_format:parquet/none/none |
| 56 | table_name:lineitem_multiblock_variable_num_rows, constraint:restrict_to, table_format:parquet/none/none |
| 57 | table_name:customer_multiblock, constraint:restrict_to, table_format:parquet/none/none |
| 58 | table_name:hudi_partitioned, constraint:restrict_to, table_format:parquet/none/none |
| 59 | table_name:hudi_non_partitioned, constraint:restrict_to, table_format:parquet/none/none |
| 60 | table_name:hudi_as_parquet, constraint:restrict_to, table_format:parquet/none/none |
| 61 | # Iceberg tests are executed in the PARQUET file format dimension |
| 62 | table_name:airports_orc, constraint:restrict_to, table_format:parquet/none/none |
| 63 | table_name:airports_parquet, constraint:restrict_to, table_format:parquet/none/none |
| 64 | table_name:complextypestbl_iceberg_orc, constraint:restrict_to, table_format:parquet/none/none |
| 65 | table_name:hadoop_catalog_test_external, constraint:restrict_to, table_format:parquet/none/none |
| 66 | table_name:iceberg_int_partitioned, constraint:restrict_to, table_format:parquet/none/none |
| 67 | table_name:iceberg_non_partitioned, constraint:restrict_to, table_format:parquet/none/none |
| 68 | table_name:iceberg_partitioned, constraint:restrict_to, table_format:parquet/none/none |
| 69 | table_name:iceberg_partitioned_orc_external, constraint:restrict_to, table_format:parquet/none/none |
| 70 | table_name:iceberg_partition_transforms_zorder, constraint:restrict_to, table_format:parquet/none/none |
| 71 | table_name:iceberg_resolution_test_external, constraint:restrict_to, table_format:parquet/none/none |
| 72 | table_name:iceberg_alltypes_part, constraint:restrict_to, table_format:parquet/none/none |
| 73 | table_name:iceberg_alltypes_part_orc, constraint:restrict_to, table_format:parquet/none/none |
| 74 | table_name:iceberg_legacy_partition_schema_evolution, constraint:restrict_to, table_format:parquet/none/none |
| 75 | table_name:iceberg_legacy_partition_schema_evolution_orc, constraint:restrict_to, table_format:parquet/none/none |
| 76 | table_name:iceberg_partition_evolution, constraint:restrict_to, table_format:parquet/none/none |
| 77 | table_name:iceberg_timestamp_part, constraint:restrict_to, table_format:parquet/none/none |
| 78 | table_name:iceberg_timestamptz_part, constraint:restrict_to, table_format:parquet/none/none |
| 79 | table_name:iceberg_uppercase_col, constraint:restrict_to, table_format:parquet/none/none |
| 80 | table_name:iceberg_v2_delete_positional, constraint:restrict_to, table_format:parquet/none/none |
| 81 | table_name:iceberg_v2_delete_equality, constraint:restrict_to, table_format:parquet/none/none |
| 82 | table_name:iceberg_v2_no_deletes, constraint:restrict_to, table_format:parquet/none/none |
| 83 | table_name:iceberg_v2_no_deletes_orc, constraint:restrict_to, table_format:parquet/none/none |
| 84 | table_name:iceberg_v2_positional_update_all_rows, constraint:restrict_to, table_format:parquet/none/none |
| 85 | table_name:iceberg_v2_positional_delete_all_rows, constraint:restrict_to, table_format:parquet/none/none |
| 86 | table_name:iceberg_v2_positional_delete_all_rows_orc, constraint:restrict_to, table_format:parquet/none/none |
| 87 | table_name:iceberg_v2_positional_not_all_data_files_have_delete_files, constraint:restrict_to, table_format:parquet/none/none |
| 88 | table_name:iceberg_v2_positional_not_all_data_files_have_delete_files_orc, constraint:restrict_to, table_format:parquet/none/none |
| 89 | table_name:iceberg_v2_partitioned_position_deletes, constraint:restrict_to, table_format:parquet/none/none |
| 90 | table_name:iceberg_v2_partitioned_position_deletes_orc, constraint:restrict_to, table_format:parquet/none/none |
| 91 | table_name:iceberg_multiple_storage_locations, constraint:restrict_to, table_format:parquet/none/none |
| 92 | table_name:iceberg_avro_format, constraint:restrict_to, table_format:parquet/none/none |
| 93 | table_name:iceberg_mixed_file_format, constraint:restrict_to, table_format:parquet/none/none |
| 94 | table_name:iceberg_lineitem_multiblock, constraint:restrict_to, table_format:parquet/none/none |
| 95 | # TODO: Support Avro. Data loading currently fails for Avro because complex types |
| 96 | # cannot be converted to the corresponding Avro types yet. |
| 97 | table_name:allcomplextypes, constraint:restrict_to, table_format:text/none/none |
| 98 | table_name:allcomplextypes, constraint:restrict_to, table_format:parquet/none/none |
| 99 | table_name:allcomplextypes, constraint:restrict_to, table_format:hbase/none/none |
| 100 | table_name:functional, constraint:restrict_to, table_format:text/none/none |
| 101 | table_name:complextypes_fileformat, constraint:restrict_to, table_format:text/none/none |
| 102 | table_name:complextypes_fileformat, constraint:restrict_to, table_format:parquet/none/none |
| 103 | table_name:complextypes_fileformat, constraint:restrict_to, table_format:avro/snap/block |
| 104 | table_name:complextypes_fileformat, constraint:restrict_to, table_format:rc/snap/block |
| 105 | table_name:complextypes_fileformat, constraint:restrict_to, table_format:seq/snap/block |
| 106 | table_name:complextypes_fileformat, constraint:restrict_to, table_format:orc/def/block |
| 107 | table_name:complextypes_multifileformat, constraint:restrict_to, table_format:text/none/none |
| 108 | # TODO: Avro |
| 109 | table_name:complextypestbl, constraint:restrict_to, table_format:parquet/none/none |
| 110 | table_name:complextypestbl, constraint:restrict_to, table_format:orc/def/block |
| 111 | table_name:complextypestbl_minor_compacted, constraint:restrict_to, table_format:orc/def/block |
| 112 | table_name:complextypestbl_deleted_rows, constraint:restrict_to, table_format:orc/def/block |
| 113 | table_name:complextypestbl_medium, constraint:restrict_to, table_format:parquet/none/none |
| 114 | table_name:complextypestbl_medium, constraint:restrict_to, table_format:orc/def/block |
| 115 | table_name:complextypestbl_non_transactional, constraint:restrict_to, table_format:orc/def/block |
| 116 | table_name:pos_item_key_value_complextypestbl, constraint:restrict_to, table_format:orc/def/block |
| 117 | table_name:pos_item_key_value_complextypestbl, constraint:restrict_to, table_format:parquet/none/none |
| 118 | table_name:alltypes_structs, constraint:restrict_to, table_format:parquet/none/none |
| 119 | table_name:alltypes_structs, constraint:restrict_to, table_format:orc/def/block |
| 120 | table_name:complextypes_structs, constraint:restrict_to, table_format:parquet/none/none |
| 121 | table_name:complextypes_structs, constraint:restrict_to, table_format:orc/def/block |
| 122 | table_name:complextypes_nested_structs, constraint:restrict_to, table_format:parquet/none/none |
| 123 | table_name:complextypes_nested_structs, constraint:restrict_to, table_format:orc/def/block |
| 124 | table_name:complextypes_arrays, constraint:restrict_to, table_format:parquet/none/none |
| 125 | table_name:complextypes_arrays, constraint:restrict_to, table_format:orc/def/block |
| 126 | table_name:alltypeserror, constraint:exclude, table_format:parquet/none/none |
| 127 | table_name:alltypeserrornonulls, constraint:exclude, table_format:parquet/none/none |
| 128 | table_name:escapechartesttable, constraint:exclude, table_format:parquet/none/none |
| 129 | table_name:TblWithRaggedColumns, constraint:exclude, table_format:parquet/none/none |
| 130 | # the text_ tables are for testing test delimiters and escape chars in text files |
| 131 | table_name:text_comma_backslash_newline, constraint:restrict_to, table_format:text/none/none |
| 132 | table_name:text_dollar_hash_pipe, constraint:restrict_to, table_format:text/none/none |
| 133 | table_name:text_thorn_ecirc_newline, constraint:restrict_to, table_format:text/none/none |
| 134 | table_name:bad_serde, constraint:restrict_to, table_format:text/none/none |
| 135 | table_name:rcfile_lazy_binary_serde, constraint:restrict_to, table_format:rc/none/none |
| 136 | table_name:unsupported_timestamp_partition, constraint:restrict_to, table_format:text/none/none |
| 137 | table_name:unsupported_binary_partition, constraint:restrict_to, table_format:text/none/none |
| 138 | table_name:nullformat_custom, constraint:exclude, table_format:parquet/none/none |
| 139 | table_name:alltypes_view, constraint:restrict_to, table_format:text/none/none |
| 140 | table_name:allcomplextypes_view, constraint:restrict_to, table_format:text/none/none |
| 141 | table_name:alltypes_view, constraint:restrict_to, table_format:seq/snap/block |
| 142 | table_name:alltypes_hive_view, constraint:restrict_to, table_format:text/none/none |
| 143 | table_name:alltypes_view_sub, constraint:restrict_to, table_format:text/none/none |
| 144 | table_name:alltypes_view_sub, constraint:restrict_to, table_format:seq/snap/block |
| 145 | table_name:alltypes_parens, constraint:restrict_to, table_format:text/none/none |
| 146 | table_name:complex_view, constraint:restrict_to, table_format:text/none/none |
| 147 | table_name:complex_view, constraint:restrict_to, table_format:seq/snap/block |
| 148 | table_name:view_view, constraint:restrict_to, table_format:text/none/none |
| 149 | table_name:view_view, constraint:restrict_to, table_format:seq/snap/block |
| 150 | table_name:subquery_view, constraint:restrict_to, table_format:seq/snap/block |
| 151 | table_name:subquery_view, constraint:restrict_to, table_format:rc/none/none |
| 152 | # liketbl, tblwithraggedcolumns and manynulls all have |
| 153 | # NULLs in primary key columns. hbase does not support |
| 154 | # writing NULLs to primary key columns. |
| 155 | table_name:liketbl, constraint:exclude, table_format:hbase/none/none |
| 156 | table_name:manynulls, constraint:exclude, table_format:hbase/none/none |
| 157 | table_name:tblwithraggedcolumns, constraint:exclude, table_format:hbase/none/none |
| 158 | # Tables with only one column are not supported in hbase. |
| 159 | table_name:greptiny, constraint:exclude, table_format:hbase/none/none |
| 160 | table_name:tinyinttable, constraint:exclude, table_format:hbase/none/none |
| 161 | # overflow uses a manually constructed text file which doesn't make sense to write to |
| 162 | # other table formats since the values that would be written are different (e.g. already |
| 163 | # truncated.) |
| 164 | table_name:overflow, constraint:restrict_to, table_format:text/none/none |
| 165 | # widerow has a single column with a single row containing a 10MB string. hbase doesn't |
| 166 | # seem to like this. |
| 167 | table_name:widerow, constraint:exclude, table_format:hbase/none/none |
| 168 | # nullformat_custom is used in null-insert tests, which user insert overwrite, |
| 169 | # which is not supported in hbase. The schema is also specified in HIVE_CREATE |
| 170 | # with no corresponding LOAD statement. |
| 171 | table_name:nullformat_custom, constraint:exclude, table_format:hbase/none/none |
| 172 | # Decimal can only be tested on formats Impala can write to (text and parquet). |
| 173 | # TODO: add Avro once Hive or Impala can write Avro decimals |
| 174 | table_name:decimal_tbl, constraint:restrict_to, table_format:text/none/none |
| 175 | table_name:decimal_tiny, constraint:restrict_to, table_format:text/none/none |
| 176 | table_name:decimal_tbl, constraint:restrict_to, table_format:parquet/none/none |
| 177 | table_name:decimal_tiny, constraint:restrict_to, table_format:parquet/none/none |
| 178 | table_name:decimal_tbl, constraint:restrict_to, table_format:kudu/none/none |
| 179 | table_name:decimal_tiny, constraint:restrict_to, table_format:kudu/none/none |
| 180 | table_name:decimal_tbl, constraint:restrict_to, table_format:orc/def/block |
| 181 | table_name:decimal_tiny, constraint:restrict_to, table_format:orc/def/block |
| 182 | table_name:decimal_rtf_tbl, constraint:restrict_to, table_format:text/none/none |
| 183 | table_name:decimal_rtf_tbl, constraint:restrict_to, table_format:parquet/none/none |
| 184 | table_name:decimal_rtf_tbl, constraint:restrict_to, table_format:kudu/none/none |
| 185 | table_name:decimal_rtf_tbl, constraint:restrict_to, table_format:orc/def/block |
| 186 | table_name:decimal_rtf_tiny_tbl, constraint:restrict_to, table_format:text/none/none |
| 187 | table_name:decimal_rtf_tiny_tbl, constraint:restrict_to, table_format:parquet/none/none |
| 188 | table_name:decimal_rtf_tiny_tbl, constraint:restrict_to, table_format:kudu/none/none |
| 189 | table_name:decimal_rtf_tiny_tbl, constraint:restrict_to, table_format:orc/def/block |
| 190 | table_name:avro_decimal_tbl, constraint:restrict_to, table_format:avro/snap/block |
| 191 | # CHAR is not supported by HBase. |
| 192 | table_name:chars_tiny, constraint:exclude, table_format:hbase/none/none |
| 193 | table_name:chars_medium, constraint:exclude, table_format:hbase/none/none |
| 194 | # invalid_decimal_part_tbl[1,2,3] tables are used for testing invalid decimal |
| 195 | # partition key values (see IMPALA-1040) |
| 196 | table_name:invalid_decimal_part_tbl1, constraint:restrict_to, table_format:text/none/none |
| 197 | table_name:invalid_decimal_part_tbl2, constraint:restrict_to, table_format:text/none/none |
| 198 | table_name:invalid_decimal_part_tbl3, constraint:restrict_to, table_format:text/none/none |
| 199 | table_name:avro_decimal_tbl, constraint:restrict_to, table_format:avro/snap/block |
| 200 | # testescape tables are used for testing text scanner delimiter handling |
| 201 | table_name:table_no_newline, constraint:restrict_to, table_format:text/none/none |
| 202 | table_name:table_no_newline_part, constraint:restrict_to, table_format:text/none/none |
| 203 | table_name:testescape_16_lf, constraint:restrict_to, table_format:text/none/none |
| 204 | table_name:testescape_16_crlf, constraint:restrict_to, table_format:text/none/none |
| 205 | table_name:testescape_17_lf, constraint:restrict_to, table_format:text/none/none |
| 206 | table_name:testescape_17_crlf, constraint:restrict_to, table_format:text/none/none |
| 207 | table_name:testescape_32_lf, constraint:restrict_to, table_format:text/none/none |
| 208 | table_name:testescape_32_crlf, constraint:restrict_to, table_format:text/none/none |
| 209 | # alltimezones is used to verify that impala properly deals with timezones |
| 210 | table_name:alltimezones, constraint:restrict_to, table_format:text/none/none |
| 211 | # Avro schema is inferred from the column definitions (IMPALA-1136) |
| 212 | table_name:no_avro_schema, constraint:restrict_to, table_format:avro/snap/block |
| 213 | table_name:avro_unicode_nulls, constraint:restrict_to, table_format:avro/snap/block |
| 214 | # test single and multi stream bz2 files |
| 215 | table_name:bzip2_tbl, constraint:restrict_to, table_format:text/bzip/block |
| 216 | table_name:large_bzip2_tbl, constraint:restrict_to, table_format:text/bzip/block |
| 217 | table_name:multistream_bzip2_tbl, constraint:restrict_to, table_format:text/bzip/block |
| 218 | table_name:large_multistream_bzip2_tbl, constraint:restrict_to, table_format:text/bzip/block |
| 219 | # Kudu can't handle certain types such as timestamp so we pick and choose the tables |
| 220 | # we actually use for Kudu related tests. |
| 221 | table_name:alltypes, constraint:only, table_format:kudu/none/none |
| 222 | table_name:alltypessmall, constraint:only, table_format:kudu/none/none |
| 223 | table_name:alltypestiny, constraint:only, table_format:kudu/none/none |
| 224 | table_name:alltypesagg, constraint:only, table_format:kudu/none/none |
| 225 | table_name:alltypesaggnonulls, constraint:only, table_format:kudu/none/none |
| 226 | table_name:testtbl, constraint:only, table_format:kudu/none/none |
| 227 | table_name:jointbl, constraint:only, table_format:kudu/none/none |
| 228 | table_name:emptytable, constraint:only, table_format:kudu/none/none |
| 229 | table_name:dimtbl, constraint:only, table_format:kudu/none/none |
| 230 | table_name:tinytable, constraint:only, table_format:kudu/none/none |
| 231 | table_name:tinyinttable, constraint:only, table_format:kudu/none/none |
| 232 | table_name:zipcode_incomes, constraint:only, table_format:kudu/none/none |
| 233 | table_name:nulltable, constraint:only, table_format:kudu/none/none |
| 234 | table_name:nullrows, constraint:only, table_format:kudu/none/none |
| 235 | table_name:nullescapedtable, constraint:only, table_format:kudu/none/none |
| 236 | table_name:decimal_tbl, constraint:only, table_format:kudu/none/none |
| 237 | table_name:decimal_rtf_tbl, constraint:only, table_format:kudu/none/none |
| 238 | table_name:decimal_rtf_tiny_tbl, constraint:only, table_format:kudu/none/none |
| 239 | table_name:decimal_tiny, constraint:only, table_format:kudu/none/none |
| 240 | table_name:strings_with_quotes, constraint:only, table_format:kudu/none/none |
| 241 | table_name:manynulls, constraint:only, table_format:kudu/none/none |
| 242 | table_name:date_tbl, constraint:only, table_format:kudu/none/none |
| 243 | # Skipping header lines is only effective with text tables |
| 244 | table_name:table_with_header, constraint:restrict_to, table_format:text/none/none |
| 245 | table_name:table_with_header_2, constraint:restrict_to, table_format:text/none/none |
| 246 | table_name:table_with_header_insert, constraint:restrict_to, table_format:text/none/none |
| 247 | # We also test that skipping header lines works on compressed tables (IMPALA-5287) |
| 248 | table_name:table_with_header, constraint:restrict_to, table_format:text/gzip/block |
| 249 | table_name:table_with_header_2, constraint:restrict_to, table_format:text/gzip/block |
| 250 | table_name:table_with_header_insert, constraint:restrict_to, table_format:text/gzip/block |
| 251 | # Inserting into parquet tables should not be affected by the 'skip.header.line.count' |
| 252 | # property, so we test parquet format as well. |
| 253 | table_name:table_with_header_insert, constraint:restrict_to, table_format:parquet/none/none |
| 254 | # IMPALA-7368/IMPALA-7370/IMPALA-8198 adds DATE support for text, hbase, parquet and avro. |
| 255 | # IMPALA-8801 adds DATE support for ORC. |
| 256 | # IMPALA-8800 adds DATE support for Kudu. |
| 257 | # Other file-formats will be introduced later. |
| 258 | table_name:date_tbl, constraint:restrict_to, table_format:parquet/none/none |
| 259 | table_name:date_tbl, constraint:restrict_to, table_format:avro/snap/block |
| 260 | table_name:date_tbl, constraint:restrict_to, table_format:orc/def/block |
| 261 | table_name:date_tbl, constraint:restrict_to, table_format:hbase/none/none |
| 262 | table_name:date_tbl, constraint:restrict_to, table_format:kudu/none/none |
| 263 | table_name:date_tbl, constraint:restrict_to, table_format:text/none/none |
| 264 | table_name:date_tbl, constraint:restrict_to, table_format:text/bzip/block |
| 265 | table_name:date_tbl, constraint:restrict_to, table_format:text/gzip/block |
| 266 | table_name:date_tbl, constraint:restrict_to, table_format:text/snap/block |
| 267 | table_name:date_tbl, constraint:restrict_to, table_format:text/def/block |
| 268 | table_name:date_tbl_error, constraint:restrict_to, table_format:text/none/none |
| 269 | table_name:date_tbl_error, constraint:restrict_to, table_format:text/bzip/block |
| 270 | table_name:date_tbl_error, constraint:restrict_to, table_format:text/gzip/block |
| 271 | table_name:date_tbl_error, constraint:restrict_to, table_format:text/snap/block |
| 272 | table_name:date_tbl_error, constraint:restrict_to, table_format:text/def/block |
| 273 | table_name:insert_date_tbl, constraint:restrict_to, table_format:hbase/none/none |
| 274 | table_name:binary_tbl, constraint:exclude, table_format:kudu/none/none |
| 275 | table_name:binary_tbl_big, constraint:exclude, table_format:kudu/none/none |
| 276 | table_name:binary_in_complex_types, constraint:restrict_to, table_format:parquet/none/none |
| 277 | table_name:binary_in_complex_types, constraint:restrict_to, table_format:orc/def/block |
| 278 | # Full transactional table is only supported for ORC |
| 279 | table_name:full_transactional_table, constraint:restrict_to, table_format:orc/def/block |
| 280 | # Insert-only transactional tables only work for file-format based tables |
| 281 | table_name:insert_only_transactional_table, constraint:exclude, table_format:hbase/none/none |
| 282 | table_name:insert_only_transactional_table, constraint:exclude, table_format:kudu/none/none |
| 283 | table_name:insertonly_nopart_insert, constraint:restrict_to, table_format:text/none/none |
| 284 | table_name:insertonly_nopart_insert, constraint:restrict_to, table_format:parquet/none/none |
| 285 | table_name:insertonly_part_insert, constraint:restrict_to, table_format:text/none/none |
| 286 | table_name:insertonly_part_insert, constraint:restrict_to, table_format:parquet/none/none |
| 287 | # A materialized view is based on one or more transactional (in this case insert-only) |
| 288 | # base tables, so the MVs need to be excluded for the table formats where the base |
| 289 | # tables are excluded |
| 290 | table_name:materialized_view, constraint:exclude, table_format:hbase/none/none |
| 291 | table_name:materialized_view, constraint:exclude, table_format:kudu/none/none |
| 292 | table_name:mv1_alltypes_jointbl, constraint:restrict_to, table_format:orc/def/block |
| 293 | table_name:mv2_alltypes_jointbl, constraint:restrict_to, table_format:orc/def/block |
| 294 | table_name:insert_only_transactional_bucketed_table, constraint:exclude, table_format:hbase/none/none |
| 295 | table_name:insert_only_transactional_bucketed_table, constraint:exclude, table_format:kudu/none/none |
| 296 | # Bucketed tables only work for file-format based tables |
| 297 | table_name:bucketed_ext_table, constraint:exclude, table_format:hbase/none/none |
| 298 | table_name:bucketed_ext_table, constraint:exclude, table_format:kudu/none/none |
| 299 | table_name:bucketed_table, constraint:exclude, table_format:hbase/none/none |
| 300 | table_name:bucketed_table, constraint:exclude, table_format:kudu/none/none |
| 301 | # The uncompressed ORC tables are mainly used in test_scanners_fuzz.py to avoid creating |
| 302 | # them each time when running the test. Developers may run this test many times locally. |
| 303 | table_name:uncomp_src_alltypes, constraint:restrict_to, table_format:orc/def/block |
| 304 | table_name:uncomp_src_decimal_tbl, constraint:restrict_to, table_format:orc/def/block |
| 305 | table_name:part_strings_with_quotes, constraint:restrict_to, table_format:text/none/none |
| 306 | # 'alltypessmall_bool_sorted' only used in ORC tests. |
| 307 | table_name:alltypessmall_bool_sorted, constraint:restrict_to, table_format:orc/def/block |
| 308 | table_name:complextypes_arrays_only_view, constraint:restrict_to, table_format:parquet/none/none |
| 309 | table_name:complextypes_arrays_only_view, constraint:restrict_to, table_format:orc/def/block |
| 310 | table_name:collection_tbl, constraint:restrict_to, table_format:parquet/none/none |
| 311 | table_name:collection_tbl, constraint:restrict_to, table_format:orc/def/block |
| 312 | # In parquet we can't have NULL map keys but in ORC we can. |
| 313 | table_name:map_null_keys, constraint:restrict_to, table_format:orc/def/block |
| 314 | table_name:map_non_varlen, constraint:restrict_to, table_format:parquet/none/none |
| 315 | table_name:map_non_varlen, constraint:restrict_to, table_format:orc/def/block |
| 316 | table_name:collection_struct_mix, constraint:restrict_to, table_format:parquet/none/none |
| 317 | table_name:collection_struct_mix, constraint:restrict_to, table_format:orc/def/block |
| 318 | table_name:collection_struct_mix_view, constraint:restrict_to, table_format:parquet/none/none |
| 319 | table_name:collection_struct_mix_view, constraint:restrict_to, table_format:orc/def/block |
| 320 | table_name:simple_arrays_big, constraint:restrict_to, table_format:parquet/none/none |
| 321 | table_name:simple_arrays_big, constraint:restrict_to, table_format:orc/def/block |
| 322 | table_name:complextypes_maps_view, constraint:restrict_to, table_format:parquet/none/none |
| 323 | table_name:complextypes_maps_view, constraint:restrict_to, table_format:orc/def/block |
| 324 | # 'alltypestiny_negative' only used in ORC tests. |
| 325 | table_name:alltypestiny_negative, constraint:restrict_to, table_format:orc/def/block |
| 326 | table_name:insert_only_minor_compacted, constraint:restrict_to, table_format:parquet/none/none |
| 327 | table_name:insert_only_major_and_minor_compacted, constraint:restrict_to, table_format:parquet/none/none |
| 328 | # The table is used in large scale metadata test. File format doesn't matter so restrict to text only |
| 329 | table_name:widetable_2000_cols_partitioned, constraint:restrict_to, table_format:text/none/none |
| 330 | table_name:alltypesagg_parquet_v2_uncompressed, constraint:restrict_to, table_format:parquet/none/none |
| 331 | table_name:alltypesagg_parquet_v2_snappy, constraint:restrict_to, table_format:parquet/none/none |
| 332 | table_name:complextypestbl_parquet_v2_uncompressed, constraint:restrict_to, table_format:parquet/none/none |
| 333 | table_name:complextypestbl_parquet_v2_snappy, constraint:restrict_to, table_format:parquet/none/none |
| 334 | # The table is used to test a specific parquet page layout bug |
| 335 | table_name:empty_parquet_page_source_impala10186, constraint:restrict_to, table_format:text/none/none |
| 336 | # The table is used as test coverage for ORC-1304 |
| 337 | table_name:empty_stream_tbl, constraint:restrict_to, table_format:orc/def/block |