Iceberg Test Run Report

DateApr 28, 2026 1:15
Duration1h 55m
Framework TestFlows 2.0.250110.1002922

Artifacts

Test artifacts can be found at https://altinity-build-artifacts.s3.amazonaws.com/index.html#REFs/antalya-26.1/75d2d67c5e994b61d8ce3729da6cf34bf7ef548a/regression/

Attributes

projectAltinity/ClickHouse
project.id159717931
user.nameMyroTk
version26.1.11.20001.altinityantalya
packagehttps://altinity-build-artifacts.s3.amazonaws.com/REFs/antalya-26.1/75d2d67c5e994b61d8ce3729da6cf34bf7ef548a/build_arm_binary/clickhouse
repositoryhttps://github.com/Altinity/clickhouse-regression
commit.hash1a2edc792c104aaade5ee012b0ea4f320da8136c
job.nameiceberg_2
job.retry1
job.urlhttps://github.com/Altinity/ClickHouse/actions/runs/25026756688
archaarch64
localTrue
clickhouse_versionNone
clickhouse_pathhttps://altinity-build-artifacts.s3.amazonaws.com/REFs/antalya-26.1/75d2d67c5e994b61d8ce3729da6cf34bf7ef548a/build_arm_binary/clickhouse
as_binaryFalse
base_osNone
keeper_pathNone
zookeeper_versionNone
use_keeperFalse
stressFalse
collect_service_logsTrue
thread_fuzzerFalse
with_analyzerTrue
reuse_envFalse
cicdTrue
minio_uriSecret(name='minio_uri')
minio_root_userSecret(name='minio_root_user')
minio_root_passwordSecret(name='minio_root_password')

Summary

97.8%OK
1%Known

Statistics

Units Skip OK Fail XFail
Modules
1
1
Features
92
8
84
Scenarios
1788
16
1752
20
Checks
100
100
Steps
84048
83921
38
89

Known Fails

Test NameResultMessage
/iceberg/iceberg engine/glue catalog/predicate push down/issue with decimal columnXFail 2s 301ms
https://github.com/ClickHouse/ClickHouse/issues/80200
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 441, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/feature.py", line 92, in feature
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/predicate_push_down.py", line 553, in feature
    Scenario(test=issue_with_decimal_column)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/predicate_push_down.py", line 459, in issue_with_decimal_column
    check_read_with_predicate_push_down(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/predicate_push_down.py", line 69, in check_read_with_predicate_push_down
    assert int(read_rows.output.strip()) == 0, error(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(Then)
  def check_read_with_predicate_push_down(
      self, where_clause, database_name, namespace, table_name
  ):
      """Check that ClickHouse does not read any rows when predicate pushdown is enabled
      and the condition does not match any data.
      """
      with By("drop all caches"):
          common.drop_all_caches(node=self.context.node)

      with And("read with input_format_parquet_filter_push_down"):
          log_comment_with_pruning = f"with_pruning_{getuid()}"
          result = iceberg_engine.read_data_from_clickhouse_iceberg_table(
              database_name=database_name,
              namespace=namespace,
              table_name=table_name,
              where_clause=where_clause,
              input_format_parquet_filter_push_down="1",
              log_comment=log_comment_with_pruning,
              use_iceberg_metadata_files_cache="0",
              use_iceberg_partition_pruning="0",
              input_format_parquet_bloom_filter_push_down="0"
          )
          assert result.output.strip() == "", error()

      with And(f"check that 0 rows were read"):
          read_rows = metrics.get_read_rows(
              log_comment=log_comment_with_pruning,
          )
          assert int(read_rows.output.strip()) == 0, error(

Description
  Expected 0 rows to be read, with where clause: decimal < 0.5, but got 10

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/predicate_push_down.py', line 69 in 'check_read_with_predicate_push_down'

61\|              input_format_parquet_bloom_filter_push_down="0"
62\|          )
63\|          assert result.output.strip() == "", error()
64\|  
65\|      with And(f"check that 0 rows were read"):
66\|          read_rows = metrics.get_read_rows(
67\|              log_comment=log_comment_with_pruning,
68\|          )
69\|>         assert int(read_rows.output.strip()) == 0, error(
70\|              f"Expected 0 rows to be read, with where clause: {where_clause}, but got {read_rows.output.strip()}"
71\|          )
72\|
/iceberg/iceberg engine/glue catalog/predicate push down/issue with float columnXFail 2s 381ms
https://github.com/ClickHouse/ClickHouse/issues/80200
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 441, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/feature.py", line 92, in feature
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/predicate_push_down.py", line 556, in feature
    Scenario(test=issue_with_float_column)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/predicate_push_down.py", line 529, in issue_with_float_column
    check_read_with_predicate_push_down(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/predicate_push_down.py", line 69, in check_read_with_predicate_push_down
    assert int(read_rows.output.strip()) == 0, error(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(Then)
  def check_read_with_predicate_push_down(
      self, where_clause, database_name, namespace, table_name
  ):
      """Check that ClickHouse does not read any rows when predicate pushdown is enabled
      and the condition does not match any data.
      """
      with By("drop all caches"):
          common.drop_all_caches(node=self.context.node)

      with And("read with input_format_parquet_filter_push_down"):
          log_comment_with_pruning = f"with_pruning_{getuid()}"
          result = iceberg_engine.read_data_from_clickhouse_iceberg_table(
              database_name=database_name,
              namespace=namespace,
              table_name=table_name,
              where_clause=where_clause,
              input_format_parquet_filter_push_down="1",
              log_comment=log_comment_with_pruning,
              use_iceberg_metadata_files_cache="0",
              use_iceberg_partition_pruning="0",
              input_format_parquet_bloom_filter_push_down="0"
          )
          assert result.output.strip() == "", error()

      with And(f"check that 0 rows were read"):
          read_rows = metrics.get_read_rows(
              log_comment=log_comment_with_pruning,
          )
          assert int(read_rows.output.strip()) == 0, error(

Description
  Expected 0 rows to be read, with where clause: float < 0.5, but got 10

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/predicate_push_down.py', line 69 in 'check_read_with_predicate_push_down'

61\|              input_format_parquet_bloom_filter_push_down="0"
62\|          )
63\|          assert result.output.strip() == "", error()
64\|  
65\|      with And(f"check that 0 rows were read"):
66\|          read_rows = metrics.get_read_rows(
67\|              log_comment=log_comment_with_pruning,
68\|          )
69\|>         assert int(read_rows.output.strip()) == 0, error(
70\|              f"Expected 0 rows to be read, with where clause: {where_clause}, but got {read_rows.output.strip()}"
71\|          )
72\|
/iceberg/iceberg engine/glue catalog/iceberg partition pruning/check iceberg partition pruning with integer typeXFail 4s 727ms
https://github.com/ClickHouse/ClickHouse/issues/93416
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 441, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/feature.py", line 125, in feature
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py", line 717, in feature
    Scenario(test=check_iceberg_partition_pruning_with_integer_type)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py", line 161, in check_iceberg_partition_pruning_with_integer_type
    assert int(s3_read_requests_count) <= max_count, error()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  assert int(s3_read_requests_count) <= max_count, error()

Assertion values
  assert int(s3_read_requests_count) <= max_count, error()
             ^ is '100'
  assert int(s3_read_requests_count) <= max_count, error()
         ^ is = 100
  assert int(s3_read_requests_count) <= max_count, error()
                                        ^ is 53
  assert int(s3_read_requests_count) <= max_count, error()
                                     ^ is = False
  assert int(s3_read_requests_count) <= max_count, error()
  ^ is False

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py', line 161 in 'check_iceberg_partition_pruning_with_integer_type'

153\|                  # 2 requests for each row: one for metadata and one for data
154\|                  # 3-5 requests for metadata files
155\|                  s3_read_requests_count = metrics.get_S3ReadRequestsCount(
156\|                      log_comment=log_comment_with_partition_pruning,
157\|                  ).output.strip()
158\|                  min_count = 2 * (length - i) + 3
159\|                  max_count = 2 * (length - i) + 13
160\|                  assert min_count <= int(s3_read_requests_count), error()
161\|>                 assert int(s3_read_requests_count) <= max_count, error()
162\|  
163\|      with And("read data from ClickHouse with partition pruning disabled"):
164\|          for i in range(length):
/iceberg/iceberg engine/glue catalog/iceberg partition pruning/check partition pruning with complex where clauseXFail 3s 400ms
https://github.com/ClickHouse/ClickHouse/issues/93416
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 441, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/feature.py", line 125, in feature
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py", line 720, in feature
    Scenario(test=check_partition_pruning_with_complex_where_clause)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py", line 367, in check_partition_pruning_with_complex_where_clause
    assert int(s3_read_requests_count) <= 22, error()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  assert int(s3_read_requests_count) <= 22, error()

Assertion values
  assert int(s3_read_requests_count) <= 22, error()
             ^ is '37'
  assert int(s3_read_requests_count) <= 22, error()
         ^ is = 37
  assert int(s3_read_requests_count) <= 22, error()
                                     ^ is = False
  assert int(s3_read_requests_count) <= 22, error()
  ^ is False

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py', line 367 in 'check_partition_pruning_with_complex_where_clause'

359\|              assert int(min_max_pruned_files) == 43, error()
360\|  
361\|      with And("check that S3ReadRequestsCount is correct"):
362\|          s3_read_requests_count = metrics.get_S3ReadRequestsCount(
363\|              log_comment=log_comment_with_partition_pruning,
364\|          ).output.strip()
365\|          if check_clickhouse_version(">=25.4")(self) or check_if_antalya_build(self):
366\|              assert 10 <= int(s3_read_requests_count), error()
367\|>             assert int(s3_read_requests_count) <= 22, error()
368\|          else:
369\|              assert 95 <= int(s3_read_requests_count), error()
370\|              assert int(s3_read_requests_count) <= 100, error()
/iceberg/iceberg engine/glue catalog/iceberg partition pruning/partition pruning with date typeXFail 4s 465ms
https://github.com/ClickHouse/ClickHouse/issues/93416
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 441, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/feature.py", line 125, in feature
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py", line 723, in feature
    Scenario(test=partition_pruning_with_date_type)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py", line 512, in partition_pruning_with_date_type
    assert int(s3_read_requests_count) <= 150, error()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  assert int(s3_read_requests_count) <= 150, error()

Assertion values
  assert int(s3_read_requests_count) <= 150, error()
             ^ is '288'
  assert int(s3_read_requests_count) <= 150, error()
         ^ is = 288
  assert int(s3_read_requests_count) <= 150, error()
                                     ^ is = False
  assert int(s3_read_requests_count) <= 150, error()
  ^ is False

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/iceberg_engine/use_iceberg_partition_pruning.py', line 512 in 'partition_pruning_with_date_type'

504\|              assert int(min_max_pruned_files) == 0, error()
505\|  
506\|      with And("check that S3ReadRequestsCount is correct"):
507\|          s3_read_requests_count = metrics.get_S3ReadRequestsCount(
508\|              log_comment=log_comment_with_partition_pruning,
509\|          ).output.strip()
510\|          if check_clickhouse_version(">=25.3")(self) or check_if_antalya_build(self):
511\|              assert 137 <= int(s3_read_requests_count), error()
512\|>             assert int(s3_read_requests_count) <= 150, error()
513\|          else:
514\|              assert 200 <= int(s3_read_requests_count), error()
515\|              assert int(s3_read_requests_count) <= 210, error()
/iceberg/export partition/no catalog/manifest integrity/value_counts across data files sum to source row countXFail 967ms
ClickHouse EXPORT PARTITION never populates `value_counts` in manifest entries (IcebergWrites.cpp / IcebergDataFileEntry.h only track column_sizes / null_value_counts / lower_bounds / upper_bounds). The Avro field is left null.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 345, in value_counts_sum_to_row_count
    assert_value_counts_sum_to(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py", line 561, in assert_value_counts_sum_to
    assert not bad, error(
           ^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(Then)
  def assert_value_counts_sum_to(
      self,
      destination,
      minio_root_user,
      minio_root_[masked]:Secret(name='minio_root_password'),
      expected_total,
  ):
      """For each column, assert ``sum(data_file.value_counts[field_id]) == expected_total``.

      This cross-checks the per-file statistics against the total row count
      without needing to decode ``lower_bounds`` / ``upper_bounds`` bytes.
      """
      table = load_pyiceberg_table(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      data_files = get_data_files(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      schema = table.schema()

      per_column_totals = {}
      for data_file in data_files:
          for field_id, count in (data_file.value_counts or {}).items():
              per_column_totals[field_id] = per_column_totals.get(field_id, 0) + count

      bad = []
      for field in schema.fields:
          total = per_column_totals.get(field.field_id, 0)
          if total != expected_total:
              bad.append((field.name, field.field_id, total))

      assert not bad, error(

Description
  Value_counts do not sum to 7 for iceberg_68385b19_42ad_11f1_9132_920007a4b2b6: [('id', 1, 0), ('year', 2, 0)]

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py', line 561 in 'assert_value_counts_sum_to'

553\|              per_column_totals[field_id] = per_column_totals.get(field_id, 0) + count
554\|  
555\|      bad = []
556\|      for field in schema.fields:
557\|          total = per_column_totals.get(field.field_id, 0)
558\|          if total != expected_total:
559\|              bad.append((field.name, field.field_id, total))
560\|  
561\|>     assert not bad, error(
562\|          f"value_counts do not sum to {expected_total} for "
563\|          f"{as_destination_name(destination)}: {bad!r}"
564\|      )
/iceberg/export partition/no catalog/manifest integrity/data file paths live under the table prefixXFail 865ms
ClickHouse EXPORT PARTITION writes `path_in_storage` (bucket-relative path) to manifest entry `file_path`, ignoring `write_full_path_in_iceberg_metadata`. Per Iceberg spec the field is a 'Location URI with FS scheme' and should be `path_in_metadata` (e.g. s3:///...). See MultipleFileWriter::startNewFile in MultipleFileWriter.cpp.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 415, in data_file_paths_under_table_prefix
    assert_file_paths_under_prefix(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py", line 588, in assert_file_paths_under_prefix
    assert not bad_paths, error(
           ^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(Then)
  def assert_file_paths_under_prefix(
      self,
      destination,
      minio_root_user,
      minio_root_[masked]:Secret(name='minio_root_password'),
      expected_prefix,
  ):
      """Assert that every data file's path begins with ``expected_prefix``.

      Useful when validating ``write_full_path_in_iceberg_metadata`` and mixed
      storage paths.
      """
      data_files = get_data_files(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      bad_paths = [
          df.file_path for df in data_files if not df.file_path.startswith(expected_prefix)
      ]
      assert not bad_paths, error(

Description
  Data files not under expected prefix 's3://warehouse/data/iceberg_68bc4c7d_42ad_11f1_bfb9_920007a4b2b6/' in iceberg_68bc4c7d_42ad_11f1_bfb9_920007a4b2b6: ['/data/iceberg_68bc4c7d_42ad_11f1_bfb9_920007a4b2b6/data/data-969be065-5848-45c0-a38d-192937ac3d26.parquet']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py', line 588 in 'assert_file_paths_under_prefix'

580\|      data_files = get_data_files(
581\|          destination=destination,
582\|          minio_root_user=minio_root_user,
583\|          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
584\|      )
585\|      bad_paths = [
586\|          df.file_path for df in data_files if not df.file_path.startswith(expected_prefix)
587\|      ]
588\|>     assert not bad_paths, error(
589\|          f"Data files not under expected prefix {expected_prefix!r} in "
590\|          f"{as_destination_name(destination)}: {bad_paths!r}"
591\|      )
/iceberg/export partition/no catalog/manifest integrity/external iceberg reader round-trips exported dataXFail 886ms
User-visible impact of the same MultipleFileWriter::startNewFile bug: any Iceberg reader that dispatches FileIO by URI scheme (PyIceberg, Spark, Trino, duckdb) cannot open the exported data files because `data_file.file_path` lacks the `s3://` scheme and falls back to the local filesystem. Remove this xfail together with the `data file paths live under the table prefix` entry above.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 509, in external_reader_round_trips_exported_data
    arrow_table = table.scan().to_arrow()
                  ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/table/__init__.py", line 1763, in to_arrow
    ).to_table(self.plan_files())
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1575, in to_table
    if table_result := future.result():
                       ^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1556, in _table_from_scan_task
    batches = list(self._record_batches_from_scan_tasks_and_deletes([task], deletes_per_file))
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1637, in _record_batches_from_scan_tasks_and_deletes
    for batch in batches:
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1367, in _task_to_record_batches
    with fs.open_input_file(path) as fin:
         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "pyarrow/_fs.pyx", line 787, in pyarrow._fs.FileSystem.open_input_file
  File "pyarrow/error.pxi", line 155, in pyarrow.lib.pyarrow_internal_check_status
  File "pyarrow/error.pxi", line 92, in pyarrow.lib.check_status
FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_693da60d_42ad_11f1_8a80_920007a4b2b6/data/data-25eecb0b-3d9a-416b-bdc1-bb9474cc89a5.parquet'. Detail: [errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 516, in external_reader_round_trips_exported_data
    assert False, error(
           ^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestScenario
  @Name("external iceberg reader round-trips exported data")
  def external_reader_round_trips_exported_data(
      self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password')
  ):
      """A standalone Iceberg reader can actually read back the exported rows.

      The sibling scenario :func:`data_file_paths_under_table_prefix` catches
      the ``path_in_storage`` vs ``path_in_metadata`` regression by static
      inspection of the manifest entries. This scenario exercises the
      **user-visible impact** of that same bug: anything that dispatches
      FileIO by URI scheme (Spark, Trino, PyIceberg, duckdb) cannot find the
      parquet files when ``data_file.file_path`` is missing a scheme.

      ClickHouse itself is immune because it resolves bucket-relative paths
      against the IcebergS3 engine's configured bucket — which is why the
      bug slipped past self-round-trip tests like
      ``assert_source_and_destination_match``. Here we go around ClickHouse:
      we load the table via PyIceberg (whose FileIO *is* registered for
      ``s3://`` via the ``StaticTable`` properties in
      :func:`load_pyiceberg_table`) and ask it to materialise the rows.

      Pre-fix failure mode: ``table.scan().to_arrow()`` walks the manifest,
      tries to open each ``data_file.file_path``, finds no URI scheme, falls
      back to PyArrow's local filesystem, and raises
      ``FileNotFoundError: Failed to open local file '/data//data/...parquet'``.
      Post-fix: paths come back as ``s3://warehouse/...``, the S3 FileIO
      resolves them against MinIO, and the scan returns the exported rows.

      Registered as XFail in ``regression.py`` alongside the static
      companion; remove both entries at the same time once
      ``MultipleFileWriter::startNewFile`` pushes ``path_in_metadata``
      instead of ``path_in_storage`` into ``data_file_names``.
      """
      source_table = f"mt_{getuid()}"
      expected_values = [(1, 2020), (2, 2020), (3, 2020)]
      values_sql = ", ".join(f"({id_}, {year})" for id_, year in expected_values)

      with Given("create source table and insert a known partition"):
          create_replicated_mergetree(
              table_name=source_table,
              columns=SIMPLE_COLUMNS,
              partition_by=SIMPLE_PARTITION_BY,
          )
          insert_data(table_name=source_table, values=values_sql)

      with And("create the Iceberg destination with full paths in metadata"):
          # write_full_path_in_iceberg_metadata = 1 is required infrastructure:
          # without it the manifest-list pointer in metadata.json is also
          # bucket-relative and PyIceberg fails before we ever reach a
          # data_file.file_path. We want the failure to be about the data
          # files, not the manifest list.
          destination = create_iceberg_destination(
              columns=SIMPLE_COLUMNS,
              partition_by=SIMPLE_PARTITION_BY,
              minio_root_user=minio_root_user,
              minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              query_settings=FULL_PATHS_SETTING,
          )

      with When("export the partition with full paths in metadata"):
          export_partition(
              source_table=source_table,
              destination=destination,
              partition_id="2020",
              extra_settings=FULL_PATHS_SETTING,
          )

      with And("load the destination via PyIceberg (external reader)"):
          table = load_pyiceberg_table(
              destination=destination,
              minio_root_user=minio_root_user,
              minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
          )

      with Then("PyIceberg can scan the table and materialise the rows"):
          # PyIceberg's ProjectedSchema.to_arrow() walks every manifest
          # entry and asks its FileIO to open each data file. FileIO is
          # dispatched by URI scheme: "s3://..." -> the S3FileIO we
          # registered in load_pyiceberg_table; anything else -> the
          # default PyArrowFileIO which treats the string as a local
          # filesystem path. The latter is what happens today — we catch
          # that and rewrite the exception into an assertion that names
          # the offending data_file.file_path so the failure points
          # straight at the spec violation.
          try:
              arrow_table = table.scan().to_arrow()
          except (FileNotFoundError, OSError) as exc:
              offending = [df.file_path for df in get_data_files(
                  destination=destination,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              )]
              assert False, error(

Description
  External reader (PyIceberg) failed to open a data file written by EXPORT PARTITION. This is the user-visible effect of data_file.file_path being bucket-relative instead of an absolute URI — FileIO dispatch falls back to the local filesystem. Underlying error: FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_693da60d_42ad_11f1_8a80_920007a4b2b6/data/data-25eecb0b-3d9a-416b-bdc1-bb9474cc89a5.parquet'. Detail: [errno 2] No such file or directory. data_file.file_path values in this snapshot: ['/data/iceberg_693da60d_42ad_11f1_8a80_920007a4b2b6/data/data-25eecb0b-3d9a-416b-bdc1-bb9474cc89a5.parquet']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py', line 516 in 'external_reader_round_trips_exported_data'

508\|          try:
509\|              arrow_table = table.scan().to_arrow()
510\|          except (FileNotFoundError, OSError) as exc:
511\|              offending = [df.file_path for df in get_data_files(
512\|                  destination=destination,
513\|                  minio_root_user=minio_root_user,
514\|                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
515\|              )]
516\|>             assert False, error(
517\|                  f"External reader (PyIceberg) failed to open a data file "
518\|                  f"written by EXPORT PARTITION. This is the user-visible "
519\|                  f"effect of data_file.file_path being bucket-relative "
/iceberg/export partition/no catalog/settings/output_format_parquet_compression_method flows to data filesXFail 1s 334ms
ClickHouse EXPORT PARTITION does not propagate format-level settings from the `ALTER ... EXPORT PARTITION ... SETTINGS` clause to the background export task. ExportReplicatedMergeTreePartitionManifest has no generic settings blob and ExportPartitionUtils::getContextCopyWithTaskSettings uses a hardcoded allowlist that omits format settings, so `output_format_parquet_compression_method` is dropped before ExportPartTask::executeStep calls getFormatSettings and the Parquet writer always falls back to the server-profile default codec. Intentional for now per dev; remove this entry once the manifest carries format settings end-to-end.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py", line 337, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py", line 319, in parquet_compression_method_flows_to_data_files
    assert normalised == {parquet_codec}, error(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestScenario
  @Name("output_format_parquet_compression_method flows to data files")
  def parquet_compression_method_flows_to_data_files(
      self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password')
  ):
      """Format-level settings must reach the Parquet writer.

      ``ExportPartTask.cpp`` resolves format settings via
      ``getFormatSettings(local_context)`` right before handing the block
      off to the destination writer. If the resolution ever stops
      picking up query-level overrides, the Parquet file ClickHouse
      writes would silently fall back to the server-wide default (``zstd``
      in recent versions). We export one partition with the setting
      pinned to ``zstd`` and another (against a fresh destination) with
      ``snappy``, then read the resulting Parquet data files via pyarrow
      and assert each row-group column actually reports the expected
      codec.

      Currently expected to fail: format-level settings are not carried
      into the background export task.
      ``ExportReplicatedMergeTreePartitionManifest`` persists only a
      hand-picked list of fields in ZK (``max_threads``,
      ``parallel_formatting``, ``parquet_parallel_encoding``,
      ``write_full_path_in_iceberg_metadata``, ...) and
      ``ExportPartitionUtils::getContextCopyWithTaskSettings`` applies an
      allowlist of the same shape; neither includes
      ``output_format_parquet_compression_method``. Whatever the user
      sets in ``ALTER ... EXPORT PARTITION ... SETTINGS`` is dropped
      before ``ExportPartTask::executeStep`` calls ``getFormatSettings``
      and the Parquet writer falls back to the server-profile default.
      Tracked as an ``xfails`` entry in ``iceberg/regression.py``; once
      the manifest carries format settings end-to-end the scenario will
      XPass and the entry can be removed.
      """
      source_table = _seed_source()

      compressions = (("zstd", "ZSTD"), ("snappy", "SNAPPY"))

      for ch_codec, parquet_codec in compressions:
          with Given(f"create a dedicated Iceberg destination for {ch_codec}"):
              # write_full_path_in_iceberg_metadata = 1 so PyIceberg can follow
              # the manifest-list pointer in metadata.json via S3 (see the
              # FULL_PATHS_SETTING docstring). It does not influence the
              # compression codec under test.
              destination = create_iceberg_destination(
                  columns=SIMPLE_COLUMNS,
                  partition_by=SIMPLE_PARTITION_BY,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
                  query_settings=FULL_PATHS_SETTING,
              )

          with When(f"export partition 2020 with {ch_codec} compression"):
              export_partition(
                  source_table=source_table,
                  destination=destination,
                  partition_id="2020",
                  extra_settings=FULL_PATHS_SETTING + [
                      ("output_format_parquet_compression_method", ch_codec),
                  ],
              )

          with Then(
              f"every column chunk of every {ch_codec} data file uses "
              f"{parquet_codec}"
          ):
              data_files = get_data_files(
                  destination=destination,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              )
              assert data_files, error(
                  f"No data files found in destination for codec {ch_codec}"
              )

              observed = set()
              for data_file in data_files:
                  bucket, key = _parse_s3_file_path(
                      data_file.file_path, DEFAULT_S3_WAREHOUSE_BUCKET
                  )
                  observed \|= _read_parquet_compression_codecs(
                      bucket=bucket,
                      key=key,
                      minio_root_user=minio_root_user,
                      minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
                  )

              # pyarrow reports codec names in upper-case. We compare
              # case-insensitively to avoid coupling the test to that
              # convention.
              normalised = {c.upper() for c in observed}
              assert normalised == {parquet_codec}, error(

Description
  Expected every column to use 'SNAPPY', got ['ZSTD']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py', line 319 in 'parquet_compression_method_flows_to_data_files'

311\|                      minio_root_user=minio_root_user,
312\|                      minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
313\|                  )
314\|  
315\|              # pyarrow reports codec names in upper-case. We compare
316\|              # case-insensitively to avoid coupling the test to that
317\|              # convention.
318\|              normalised = {c.upper() for c in observed}
319\|>             assert normalised == {parquet_codec}, error(
320\|                  f"Expected every column to use {parquet_codec!r}, "
321\|                  f"got {sorted(observed)!r}"
322\|              )
/iceberg/export partition/rest catalog/manifest integrity/value_counts across data files sum to source row countXFail 4s 170ms
ClickHouse EXPORT PARTITION never populates `value_counts` in manifest entries (IcebergWrites.cpp / IcebergDataFileEntry.h only track column_sizes / null_value_counts / lower_bounds / upper_bounds). The Avro field is left null.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 345, in value_counts_sum_to_row_count
    assert_value_counts_sum_to(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py", line 561, in assert_value_counts_sum_to
    assert not bad, error(
           ^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(Then)
  def assert_value_counts_sum_to(
      self,
      destination,
      minio_root_user,
      minio_root_[masked]:Secret(name='minio_root_password'),
      expected_total,
  ):
      """For each column, assert ``sum(data_file.value_counts[field_id]) == expected_total``.

      This cross-checks the per-file statistics against the total row count
      without needing to decode ``lower_bounds`` / ``upper_bounds`` bytes.
      """
      table = load_pyiceberg_table(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      data_files = get_data_files(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      schema = table.schema()

      per_column_totals = {}
      for data_file in data_files:
          for field_id, count in (data_file.value_counts or {}).items():
              per_column_totals[field_id] = per_column_totals.get(field_id, 0) + count

      bad = []
      for field in schema.fields:
          total = per_column_totals.get(field.field_id, 0)
          if total != expected_total:
              bad.append((field.name, field.field_id, total))

      assert not bad, error(

Description
  Value_counts do not sum to 7 for datalake_ec1f7849_42ad_11f1_9a15_920007a4b2b6.\`export_ns_ec1f7788_42ad_11f1_a0e9_920007a4b2b6.iceberg_ec1f780d_42ad_11f1_8e90_920007a4b2b6\`: [('id', 1, 0), ('year', 2, 0)]

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py', line 561 in 'assert_value_counts_sum_to'

553\|              per_column_totals[field_id] = per_column_totals.get(field_id, 0) + count
554\|  
555\|      bad = []
556\|      for field in schema.fields:
557\|          total = per_column_totals.get(field.field_id, 0)
558\|          if total != expected_total:
559\|              bad.append((field.name, field.field_id, total))
560\|  
561\|>     assert not bad, error(
562\|          f"value_counts do not sum to {expected_total} for "
563\|          f"{as_destination_name(destination)}: {bad!r}"
564\|      )
/iceberg/export partition/rest catalog/manifest integrity/data file paths live under the table prefixXFail 4s 103ms
ClickHouse EXPORT PARTITION writes `path_in_storage` (bucket-relative path) to manifest entry `file_path`, ignoring `write_full_path_in_iceberg_metadata`. Per Iceberg spec the field is a 'Location URI with FS scheme' and should be `path_in_metadata` (e.g. s3:///...). See MultipleFileWriter::startNewFile in MultipleFileWriter.cpp.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 415, in data_file_paths_under_table_prefix
    assert_file_paths_under_prefix(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py", line 588, in assert_file_paths_under_prefix
    assert not bad_paths, error(
           ^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(Then)
  def assert_file_paths_under_prefix(
      self,
      destination,
      minio_root_user,
      minio_root_[masked]:Secret(name='minio_root_password'),
      expected_prefix,
  ):
      """Assert that every data file's path begins with ``expected_prefix``.

      Useful when validating ``write_full_path_in_iceberg_metadata`` and mixed
      storage paths.
      """
      data_files = get_data_files(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      bad_paths = [
          df.file_path for df in data_files if not df.file_path.startswith(expected_prefix)
      ]
      assert not bad_paths, error(

Description
  Data files not under expected prefix 's3://warehouse/data/iceberg_ee8e70a2_42ad_11f1_b126_920007a4b2b6/' in datalake_ee8e70df_42ad_11f1_9d18_920007a4b2b6.\`export_ns_ee8e700c_42ad_11f1_896e_920007a4b2b6.iceberg_ee8e70a2_42ad_11f1_b126_920007a4b2b6\`: ['/data/iceberg_ee8e70a2_42ad_11f1_b126_920007a4b2b6/data/data-cd4c86e6-c9e3-446d-a959-4175805544c1.parquet']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py', line 588 in 'assert_file_paths_under_prefix'

580\|      data_files = get_data_files(
581\|          destination=destination,
582\|          minio_root_user=minio_root_user,
583\|          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
584\|      )
585\|      bad_paths = [
586\|          df.file_path for df in data_files if not df.file_path.startswith(expected_prefix)
587\|      ]
588\|>     assert not bad_paths, error(
589\|          f"Data files not under expected prefix {expected_prefix!r} in "
590\|          f"{as_destination_name(destination)}: {bad_paths!r}"
591\|      )
/iceberg/export partition/rest catalog/manifest integrity/external iceberg reader round-trips exported dataXFail 4s 91ms
User-visible impact of the same MultipleFileWriter::startNewFile bug: any Iceberg reader that dispatches FileIO by URI scheme (PyIceberg, Spark, Trino, duckdb) cannot open the exported data files because `data_file.file_path` lacks the `s3://` scheme and falls back to the local filesystem. Remove this xfail together with the `data file paths live under the table prefix` entry above.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 509, in external_reader_round_trips_exported_data
    arrow_table = table.scan().to_arrow()
                  ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/table/__init__.py", line 1763, in to_arrow
    ).to_table(self.plan_files())
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1575, in to_table
    if table_result := future.result():
                       ^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1556, in _table_from_scan_task
    batches = list(self._record_batches_from_scan_tasks_and_deletes([task], deletes_per_file))
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1637, in _record_batches_from_scan_tasks_and_deletes
    for batch in batches:
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1367, in _task_to_record_batches
    with fs.open_input_file(path) as fin:
         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "pyarrow/_fs.pyx", line 787, in pyarrow._fs.FileSystem.open_input_file
  File "pyarrow/error.pxi", line 155, in pyarrow.lib.pyarrow_internal_check_status
  File "pyarrow/error.pxi", line 92, in pyarrow.lib.check_status
FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_f0ff8785_42ad_11f1_a5ca_920007a4b2b6/data/data-24b14163-e528-490c-abde-56b4da559c22.parquet'. Detail: [errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 516, in external_reader_round_trips_exported_data
    assert False, error(
           ^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestScenario
  @Name("external iceberg reader round-trips exported data")
  def external_reader_round_trips_exported_data(
      self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password')
  ):
      """A standalone Iceberg reader can actually read back the exported rows.

      The sibling scenario :func:`data_file_paths_under_table_prefix` catches
      the ``path_in_storage`` vs ``path_in_metadata`` regression by static
      inspection of the manifest entries. This scenario exercises the
      **user-visible impact** of that same bug: anything that dispatches
      FileIO by URI scheme (Spark, Trino, PyIceberg, duckdb) cannot find the
      parquet files when ``data_file.file_path`` is missing a scheme.

      ClickHouse itself is immune because it resolves bucket-relative paths
      against the IcebergS3 engine's configured bucket — which is why the
      bug slipped past self-round-trip tests like
      ``assert_source_and_destination_match``. Here we go around ClickHouse:
      we load the table via PyIceberg (whose FileIO *is* registered for
      ``s3://`` via the ``StaticTable`` properties in
      :func:`load_pyiceberg_table`) and ask it to materialise the rows.

      Pre-fix failure mode: ``table.scan().to_arrow()`` walks the manifest,
      tries to open each ``data_file.file_path``, finds no URI scheme, falls
      back to PyArrow's local filesystem, and raises
      ``FileNotFoundError: Failed to open local file '/data//data/...parquet'``.
      Post-fix: paths come back as ``s3://warehouse/...``, the S3 FileIO
      resolves them against MinIO, and the scan returns the exported rows.

      Registered as XFail in ``regression.py`` alongside the static
      companion; remove both entries at the same time once
      ``MultipleFileWriter::startNewFile`` pushes ``path_in_metadata``
      instead of ``path_in_storage`` into ``data_file_names``.
      """
      source_table = f"mt_{getuid()}"
      expected_values = [(1, 2020), (2, 2020), (3, 2020)]
      values_sql = ", ".join(f"({id_}, {year})" for id_, year in expected_values)

      with Given("create source table and insert a known partition"):
          create_replicated_mergetree(
              table_name=source_table,
              columns=SIMPLE_COLUMNS,
              partition_by=SIMPLE_PARTITION_BY,
          )
          insert_data(table_name=source_table, values=values_sql)

      with And("create the Iceberg destination with full paths in metadata"):
          # write_full_path_in_iceberg_metadata = 1 is required infrastructure:
          # without it the manifest-list pointer in metadata.json is also
          # bucket-relative and PyIceberg fails before we ever reach a
          # data_file.file_path. We want the failure to be about the data
          # files, not the manifest list.
          destination = create_iceberg_destination(
              columns=SIMPLE_COLUMNS,
              partition_by=SIMPLE_PARTITION_BY,
              minio_root_user=minio_root_user,
              minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              query_settings=FULL_PATHS_SETTING,
          )

      with When("export the partition with full paths in metadata"):
          export_partition(
              source_table=source_table,
              destination=destination,
              partition_id="2020",
              extra_settings=FULL_PATHS_SETTING,
          )

      with And("load the destination via PyIceberg (external reader)"):
          table = load_pyiceberg_table(
              destination=destination,
              minio_root_user=minio_root_user,
              minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
          )

      with Then("PyIceberg can scan the table and materialise the rows"):
          # PyIceberg's ProjectedSchema.to_arrow() walks every manifest
          # entry and asks its FileIO to open each data file. FileIO is
          # dispatched by URI scheme: "s3://..." -> the S3FileIO we
          # registered in load_pyiceberg_table; anything else -> the
          # default PyArrowFileIO which treats the string as a local
          # filesystem path. The latter is what happens today — we catch
          # that and rewrite the exception into an assertion that names
          # the offending data_file.file_path so the failure points
          # straight at the spec violation.
          try:
              arrow_table = table.scan().to_arrow()
          except (FileNotFoundError, OSError) as exc:
              offending = [df.file_path for df in get_data_files(
                  destination=destination,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              )]
              assert False, error(

Description
  External reader (PyIceberg) failed to open a data file written by EXPORT PARTITION. This is the user-visible effect of data_file.file_path being bucket-relative instead of an absolute URI — FileIO dispatch falls back to the local filesystem. Underlying error: FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_f0ff8785_42ad_11f1_a5ca_920007a4b2b6/data/data-24b14163-e528-490c-abde-56b4da559c22.parquet'. Detail: [errno 2] No such file or directory. data_file.file_path values in this snapshot: ['/data/iceberg_f0ff8785_42ad_11f1_a5ca_920007a4b2b6/data/data-24b14163-e528-490c-abde-56b4da559c22.parquet']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py', line 516 in 'external_reader_round_trips_exported_data'

508\|          try:
509\|              arrow_table = table.scan().to_arrow()
510\|          except (FileNotFoundError, OSError) as exc:
511\|              offending = [df.file_path for df in get_data_files(
512\|                  destination=destination,
513\|                  minio_root_user=minio_root_user,
514\|                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
515\|              )]
516\|>             assert False, error(
517\|                  f"External reader (PyIceberg) failed to open a data file "
518\|                  f"written by EXPORT PARTITION. This is the user-visible "
519\|                  f"effect of data_file.file_path being bucket-relative "
/iceberg/export partition/rest catalog/catalogs/catalog﹕ external reader round-trips exported dataXFail 4s 54ms
Same MultipleFileWriter::startNewFile bug as the no_catalog external-reader scenario, but reached through a catalog-backed destination (REST / Glue). PyIceberg loads the table via the catalog, walks the manifest, and FileIO dispatches by URI scheme — data_file.file_path has no scheme so it falls back to the local filesystem and raises FileNotFoundError. Remove this xfail alongside the manifest-integrity one above.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/catalogs.py", line 427, in catalog_external_reader_round_trips_exported_data
    arrow_table = external_view.scan().to_arrow()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/table/__init__.py", line 1763, in to_arrow
    ).to_table(self.plan_files())
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1575, in to_table
    if table_result := future.result():
                       ^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1556, in _table_from_scan_task
    batches = list(self._record_batches_from_scan_tasks_and_deletes([task], deletes_per_file))
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1637, in _record_batches_from_scan_tasks_and_deletes
    for batch in batches:
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1367, in _task_to_record_batches
    with fs.open_input_file(path) as fin:
         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "pyarrow/_fs.pyx", line 787, in pyarrow._fs.FileSystem.open_input_file
  File "pyarrow/error.pxi", line 155, in pyarrow.lib.pyarrow_internal_check_status
  File "pyarrow/error.pxi", line 92, in pyarrow.lib.check_status
FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_f5eb656f_42ad_11f1_bd20_920007a4b2b6/data/data-f0057d88-8d8e-48f4-8f2a-0753aa2816ff.parquet'. Detail: [errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/catalogs.py", line 471, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/catalogs.py", line 438, in catalog_external_reader_round_trips_exported_data
    assert False, error(
           ^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestScenario
  @Name("catalog: external reader round-trips exported data")
  def catalog_external_reader_round_trips_exported_data(
      self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password')
  ):
      """A non-ClickHouse Iceberg reader can follow the catalog's metadata
      pointer and read the rows back byte-exact.

      Mirrors
      :func:`iceberg.tests.export_partition.manifest_integrity.external_reader_round_trips_exported_data`
      but for catalog-managed tables: here the metadata pointer comes from
      the catalog (REST / Glue) rather than from scanning an S3 warehouse
      prefix. Catching a regression in which ``EXPORT PARTITION`` mutates the
      catalog pointer but leaves the data files unreadable would surface
      here — if it fires in the wild, users of Spark / Trino / duckdb / dbt
      with an Iceberg catalog would hit the same failure.

      Scenario is skipped in ``no_catalog`` mode.
      """
      _require_external_catalog()
      source_table = _seed_source()

      with Given("materialise a catalog-backed Iceberg destination via PyIceberg"):
          destination = create_pyiceberg_catalog_destination(
              schema=CATALOG_SCHEMA,
              partition_spec=CATALOG_PARTITION_SPEC,
              minio_root_user=minio_root_user,
              minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
          )

      with When("export the single partition"):
          # ``destination=`` dispatches the catalog-aware split of
          # (destination_database, destination_table) when waiting for the
          # status to flip to ``COMPLETED``; see Phase 2 notes in
          # ``steps/export_status.py``.
          export_partition(
              source_table=source_table,
              destination=destination,
              partition_id="2020",
              extra_settings=FULL_PATHS_SETTING,
          )

      with Then("PyIceberg (external reader) can materialise the exported rows"):
          handle = as_pyiceberg_handle(destination)
          assert handle is not None, error(
              "Expected catalog-backed destination to expose a PyIceberg handle"
          )
          external_view = handle["pyiceberg_catalog"].load_table(
              f"{handle['namespace']}.{handle['table_name']}"
          )
          try:
              arrow_table = external_view.scan().to_arrow()
          except (FileNotFoundError, OSError) as exc:
              # Same diagnostic shape as the no-catalog sibling: name the
              # offending ``data_file.file_path`` so the failure points
              # straight at the spec violation rather than a PyArrow trace.
              offending = []
              current_snapshot = external_view.current_snapshot()
              if current_snapshot is not None:
                  for manifest in current_snapshot.manifests(external_view.io):
                      for entry in manifest.fetch_manifest_entry(external_view.io):
                          offending.append(entry.data_file.file_path)
              assert False, error(

Description
  External reader (PyIceberg) could not open a data file committed through the catalog. FileIO dispatch fell back to the local filesystem, which is the symptom of data_file.file_path lacking a URI scheme. Underlying error: FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_f5eb656f_42ad_11f1_bd20_920007a4b2b6/data/data-f0057d88-8d8e-48f4-8f2a-0753aa2816ff.parquet'. Detail: [errno 2] No such file or directory. data_file.file_path values: ['/data/iceberg_f5eb656f_42ad_11f1_bd20_920007a4b2b6/data/data-f0057d88-8d8e-48f4-8f2a-0753aa2816ff.parquet']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/catalogs.py', line 438 in 'catalog_external_reader_round_trips_exported_data'

430\|              # offending ``data_file.file_path`` so the failure points
431\|              # straight at the spec violation rather than a PyArrow trace.
432\|              offending = []
433\|              current_snapshot = external_view.current_snapshot()
434\|              if current_snapshot is not None:
435\|                  for manifest in current_snapshot.manifests(external_view.io):
436\|                      for entry in manifest.fetch_manifest_entry(external_view.io):
437\|                          offending.append(entry.data_file.file_path)
438\|>             assert False, error(
439\|                  f"External reader (PyIceberg) could not open a data file "
440\|                  f"committed through the catalog. FileIO dispatch fell back "
441\|                  f"to the local filesystem, which is the symptom of "
/iceberg/export partition/rest catalog/settings/output_format_parquet_compression_method flows to data filesXFail 4s 581ms
ClickHouse EXPORT PARTITION does not propagate format-level settings from the `ALTER ... EXPORT PARTITION ... SETTINGS` clause to the background export task. ExportReplicatedMergeTreePartitionManifest has no generic settings blob and ExportPartitionUtils::getContextCopyWithTaskSettings uses a hardcoded allowlist that omits format settings, so `output_format_parquet_compression_method` is dropped before ExportPartTask::executeStep calls getFormatSettings and the Parquet writer always falls back to the server-profile default codec. Intentional for now per dev; remove this entry once the manifest carries format settings end-to-end.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py", line 337, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py", line 319, in parquet_compression_method_flows_to_data_files
    assert normalised == {parquet_codec}, error(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestScenario
  @Name("output_format_parquet_compression_method flows to data files")
  def parquet_compression_method_flows_to_data_files(
      self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password')
  ):
      """Format-level settings must reach the Parquet writer.

      ``ExportPartTask.cpp`` resolves format settings via
      ``getFormatSettings(local_context)`` right before handing the block
      off to the destination writer. If the resolution ever stops
      picking up query-level overrides, the Parquet file ClickHouse
      writes would silently fall back to the server-wide default (``zstd``
      in recent versions). We export one partition with the setting
      pinned to ``zstd`` and another (against a fresh destination) with
      ``snappy``, then read the resulting Parquet data files via pyarrow
      and assert each row-group column actually reports the expected
      codec.

      Currently expected to fail: format-level settings are not carried
      into the background export task.
      ``ExportReplicatedMergeTreePartitionManifest`` persists only a
      hand-picked list of fields in ZK (``max_threads``,
      ``parallel_formatting``, ``parquet_parallel_encoding``,
      ``write_full_path_in_iceberg_metadata``, ...) and
      ``ExportPartitionUtils::getContextCopyWithTaskSettings`` applies an
      allowlist of the same shape; neither includes
      ``output_format_parquet_compression_method``. Whatever the user
      sets in ``ALTER ... EXPORT PARTITION ... SETTINGS`` is dropped
      before ``ExportPartTask::executeStep`` calls ``getFormatSettings``
      and the Parquet writer falls back to the server-profile default.
      Tracked as an ``xfails`` entry in ``iceberg/regression.py``; once
      the manifest carries format settings end-to-end the scenario will
      XPass and the entry can be removed.
      """
      source_table = _seed_source()

      compressions = (("zstd", "ZSTD"), ("snappy", "SNAPPY"))

      for ch_codec, parquet_codec in compressions:
          with Given(f"create a dedicated Iceberg destination for {ch_codec}"):
              # write_full_path_in_iceberg_metadata = 1 so PyIceberg can follow
              # the manifest-list pointer in metadata.json via S3 (see the
              # FULL_PATHS_SETTING docstring). It does not influence the
              # compression codec under test.
              destination = create_iceberg_destination(
                  columns=SIMPLE_COLUMNS,
                  partition_by=SIMPLE_PARTITION_BY,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
                  query_settings=FULL_PATHS_SETTING,
              )

          with When(f"export partition 2020 with {ch_codec} compression"):
              export_partition(
                  source_table=source_table,
                  destination=destination,
                  partition_id="2020",
                  extra_settings=FULL_PATHS_SETTING + [
                      ("output_format_parquet_compression_method", ch_codec),
                  ],
              )

          with Then(
              f"every column chunk of every {ch_codec} data file uses "
              f"{parquet_codec}"
          ):
              data_files = get_data_files(
                  destination=destination,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              )
              assert data_files, error(
                  f"No data files found in destination for codec {ch_codec}"
              )

              observed = set()
              for data_file in data_files:
                  bucket, key = _parse_s3_file_path(
                      data_file.file_path, DEFAULT_S3_WAREHOUSE_BUCKET
                  )
                  observed \|= _read_parquet_compression_codecs(
                      bucket=bucket,
                      key=key,
                      minio_root_user=minio_root_user,
                      minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
                  )

              # pyarrow reports codec names in upper-case. We compare
              # case-insensitively to avoid coupling the test to that
              # convention.
              normalised = {c.upper() for c in observed}
              assert normalised == {parquet_codec}, error(

Description
  Expected every column to use 'SNAPPY', got ['ZSTD']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py', line 319 in 'parquet_compression_method_flows_to_data_files'

311\|                      minio_root_user=minio_root_user,
312\|                      minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
313\|                  )
314\|  
315\|              # pyarrow reports codec names in upper-case. We compare
316\|              # case-insensitively to avoid coupling the test to that
317\|              # convention.
318\|              normalised = {c.upper() for c in observed}
319\|>             assert normalised == {parquet_codec}, error(
320\|                  f"Expected every column to use {parquet_codec!r}, "
321\|                  f"got {sorted(observed)!r}"
322\|              )
/iceberg/export partition/rest catalog/truncate/export after truncate repopulates destinationXFail 2m 4s
ClickHouse bug: TRUNCATE and EXPORT disagree on the Iceberg metadata path format under REST. EXPORT commits manifest / manifest-list entries as bucket-relative paths (`/data//metadata/snap-...avro`). `IcebergMetadata::truncate` instead serialises those same entries as full `s3://bucket/...` URIs. When the next EXPORT runs after a TRUNCATE, IcebergWrites.cpp refuses to commit with `Paths in Iceberg must use a consistent format — either /your/path or s3://your/path. Use the write_full_path_in_iceberg_metadata setting to control this behavior`, and the background scheduler retries forever (task stuck in PENDING). Glue does not trip this because `apply_glue_metadata_path_workaround` already forces `write_full_path_in_iceberg_metadata=1` on both EXPORT and TRUNCATE there, so both sides write full URIs. Fix is upstream: either `IcebergMetadata::truncate` must honour the same path-format default as EXPORT, or the consistency check in IcebergWrites needs to look at new writes only instead of the inherited snapshot chain.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/truncate.py", line 313, in feature
    Scenario(test=export_after_truncate, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/truncate.py", line 210, in export_after_truncate
    export_partition(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/export_operations.py", line 243, in export_partition
    wait_for_export_status(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/export_status.py", line 163, in wait_for_export_status
    assert last_status == expected_status, error(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(When)
  def wait_for_export_status(
      self,
      source_table,
      partition_id,
      expected_status="COMPLETED",
      destination=None,
      destination_table=None,
      timeout=120,
      delay=3,
      node=None,
  ):
      """Poll ``system.replicated_partition_exports`` until ``status`` matches.

      Fails the scenario on timeout, reporting the last observed status.

      See :func:`get_export_row` for the meaning of ``destination`` /
      ``destination_table``.
      """
      if node is None:
          node = self.context.node

      last_status = None
      for attempt in retries(timeout=timeout, delay=delay):
          with attempt:
              last_status = get_export_row(
                  source_table=source_table,
                  partition_id=partition_id,
                  destination=destination,
                  destination_table=destination_table,
                  columns="status",
                  node=node,
              )
              assert last_status == expected_status, error(

Description
  Expected status 'COMPLETED' for source_table='mt_c795e70c_42ae_11f1_b3ad_920007a4b2b6' partition_id='2022' but got 'FAILED'

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/export_status.py', line 163 in 'wait_for_export_status'

155\|              last_status = get_export_row(
156\|                  source_table=source_table,
157\|                  partition_id=partition_id,
158\|                  destination=destination,
159\|                  destination_table=destination_table,
160\|                  columns="status",
161\|                  node=node,
162\|              )
163\|>             assert last_status == expected_status, error(
164\|                  f"Expected status '{expected_status}' for "
165\|                  f"source_table='{source_table}' partition_id='{partition_id}'"
166\|                  f" but got '{last_status}'"
/iceberg/export partition/glue catalog/manifest integrity/value_counts across data files sum to source row countXFail 1s 118ms
ClickHouse EXPORT PARTITION never populates `value_counts` in manifest entries (IcebergWrites.cpp / IcebergDataFileEntry.h only track column_sizes / null_value_counts / lower_bounds / upper_bounds). The Avro field is left null.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 345, in value_counts_sum_to_row_count
    assert_value_counts_sum_to(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py", line 561, in assert_value_counts_sum_to
    assert not bad, error(
           ^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(Then)
  def assert_value_counts_sum_to(
      self,
      destination,
      minio_root_user,
      minio_root_[masked]:Secret(name='minio_root_password'),
      expected_total,
  ):
      """For each column, assert ``sum(data_file.value_counts[field_id]) == expected_total``.

      This cross-checks the per-file statistics against the total row count
      without needing to decode ``lower_bounds`` / ``upper_bounds`` bytes.
      """
      table = load_pyiceberg_table(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      data_files = get_data_files(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      schema = table.schema()

      per_column_totals = {}
      for data_file in data_files:
          for field_id, count in (data_file.value_counts or {}).items():
              per_column_totals[field_id] = per_column_totals.get(field_id, 0) + count

      bad = []
      for field in schema.fields:
          total = per_column_totals.get(field.field_id, 0)
          if total != expected_total:
              bad.append((field.name, field.field_id, total))

      assert not bad, error(

Description
  Value_counts do not sum to 7 for datalake_29af3c35_42af_11f1_81a2_920007a4b2b6.\`export_ns_29af3b63_42af_11f1_ba5c_920007a4b2b6.iceberg_29af3bf5_42af_11f1_a5d6_920007a4b2b6\`: [('id', 1, 0), ('year', 2, 0)]

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py', line 561 in 'assert_value_counts_sum_to'

553\|              per_column_totals[field_id] = per_column_totals.get(field_id, 0) + count
554\|  
555\|      bad = []
556\|      for field in schema.fields:
557\|          total = per_column_totals.get(field.field_id, 0)
558\|          if total != expected_total:
559\|              bad.append((field.name, field.field_id, total))
560\|  
561\|>     assert not bad, error(
562\|          f"value_counts do not sum to {expected_total} for "
563\|          f"{as_destination_name(destination)}: {bad!r}"
564\|      )
/iceberg/export partition/glue catalog/manifest integrity/data file paths live under the table prefixXFail 1s 460ms
ClickHouse EXPORT PARTITION writes `path_in_storage` (bucket-relative path) to manifest entry `file_path`, ignoring `write_full_path_in_iceberg_metadata`. Per Iceberg spec the field is a 'Location URI with FS scheme' and should be `path_in_metadata` (e.g. s3:///...). See MultipleFileWriter::startNewFile in MultipleFileWriter.cpp.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 415, in data_file_paths_under_table_prefix
    assert_file_paths_under_prefix(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py", line 588, in assert_file_paths_under_prefix
    assert not bad_paths, error(
           ^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestStep(Then)
  def assert_file_paths_under_prefix(
      self,
      destination,
      minio_root_user,
      minio_root_[masked]:Secret(name='minio_root_password'),
      expected_prefix,
  ):
      """Assert that every data file's path begins with ``expected_prefix``.

      Useful when validating ``write_full_path_in_iceberg_metadata`` and mixed
      storage paths.
      """
      data_files = get_data_files(
          destination=destination,
          minio_root_user=minio_root_user,
          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
      )
      bad_paths = [
          df.file_path for df in data_files if not df.file_path.startswith(expected_prefix)
      ]
      assert not bad_paths, error(

Description
  Data files not under expected prefix 's3://warehouse/data/iceberg_2a4a53bc_42af_11f1_bf26_920007a4b2b6/' in datalake_2a4a53f2_42af_11f1_8804_920007a4b2b6.\`export_ns_2a4a5339_42af_11f1_b4ea_920007a4b2b6.iceberg_2a4a53bc_42af_11f1_bf26_920007a4b2b6\`: ['/data/iceberg_2a4a53bc_42af_11f1_bf26_920007a4b2b6/data/data-402cb9d5-b206-4dde-913f-ea791db1deaf.parquet']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/steps/manifest_validation.py', line 588 in 'assert_file_paths_under_prefix'

580\|      data_files = get_data_files(
581\|          destination=destination,
582\|          minio_root_user=minio_root_user,
583\|          minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
584\|      )
585\|      bad_paths = [
586\|          df.file_path for df in data_files if not df.file_path.startswith(expected_prefix)
587\|      ]
588\|>     assert not bad_paths, error(
589\|          f"Data files not under expected prefix {expected_prefix!r} in "
590\|          f"{as_destination_name(destination)}: {bad_paths!r}"
591\|      )
/iceberg/export partition/glue catalog/manifest integrity/external iceberg reader round-trips exported dataXFail 1s 41ms
User-visible impact of the same MultipleFileWriter::startNewFile bug: any Iceberg reader that dispatches FileIO by URI scheme (PyIceberg, Spark, Trino, duckdb) cannot open the exported data files because `data_file.file_path` lacks the `s3://` scheme and falls back to the local filesystem. Remove this xfail together with the `data file paths live under the table prefix` entry above.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 509, in external_reader_round_trips_exported_data
    arrow_table = table.scan().to_arrow()
                  ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/table/__init__.py", line 1763, in to_arrow
    ).to_table(self.plan_files())
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1575, in to_table
    if table_result := future.result():
                       ^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1556, in _table_from_scan_task
    batches = list(self._record_batches_from_scan_tasks_and_deletes([task], deletes_per_file))
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1637, in _record_batches_from_scan_tasks_and_deletes
    for batch in batches:
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1367, in _task_to_record_batches
    with fs.open_input_file(path) as fin:
         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "pyarrow/_fs.pyx", line 787, in pyarrow._fs.FileSystem.open_input_file
  File "pyarrow/error.pxi", line 155, in pyarrow.lib.pyarrow_internal_check_status
  File "pyarrow/error.pxi", line 92, in pyarrow.lib.check_status
FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_2b277e68_42af_11f1_b105_920007a4b2b6/data/data-2d06a153-e6df-41bd-bdab-52434fc90995.parquet'. Detail: [errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 552, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py", line 516, in external_reader_round_trips_exported_data
    assert False, error(
           ^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestScenario
  @Name("external iceberg reader round-trips exported data")
  def external_reader_round_trips_exported_data(
      self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password')
  ):
      """A standalone Iceberg reader can actually read back the exported rows.

      The sibling scenario :func:`data_file_paths_under_table_prefix` catches
      the ``path_in_storage`` vs ``path_in_metadata`` regression by static
      inspection of the manifest entries. This scenario exercises the
      **user-visible impact** of that same bug: anything that dispatches
      FileIO by URI scheme (Spark, Trino, PyIceberg, duckdb) cannot find the
      parquet files when ``data_file.file_path`` is missing a scheme.

      ClickHouse itself is immune because it resolves bucket-relative paths
      against the IcebergS3 engine's configured bucket — which is why the
      bug slipped past self-round-trip tests like
      ``assert_source_and_destination_match``. Here we go around ClickHouse:
      we load the table via PyIceberg (whose FileIO *is* registered for
      ``s3://`` via the ``StaticTable`` properties in
      :func:`load_pyiceberg_table`) and ask it to materialise the rows.

      Pre-fix failure mode: ``table.scan().to_arrow()`` walks the manifest,
      tries to open each ``data_file.file_path``, finds no URI scheme, falls
      back to PyArrow's local filesystem, and raises
      ``FileNotFoundError: Failed to open local file '/data//data/...parquet'``.
      Post-fix: paths come back as ``s3://warehouse/...``, the S3 FileIO
      resolves them against MinIO, and the scan returns the exported rows.

      Registered as XFail in ``regression.py`` alongside the static
      companion; remove both entries at the same time once
      ``MultipleFileWriter::startNewFile`` pushes ``path_in_metadata``
      instead of ``path_in_storage`` into ``data_file_names``.
      """
      source_table = f"mt_{getuid()}"
      expected_values = [(1, 2020), (2, 2020), (3, 2020)]
      values_sql = ", ".join(f"({id_}, {year})" for id_, year in expected_values)

      with Given("create source table and insert a known partition"):
          create_replicated_mergetree(
              table_name=source_table,
              columns=SIMPLE_COLUMNS,
              partition_by=SIMPLE_PARTITION_BY,
          )
          insert_data(table_name=source_table, values=values_sql)

      with And("create the Iceberg destination with full paths in metadata"):
          # write_full_path_in_iceberg_metadata = 1 is required infrastructure:
          # without it the manifest-list pointer in metadata.json is also
          # bucket-relative and PyIceberg fails before we ever reach a
          # data_file.file_path. We want the failure to be about the data
          # files, not the manifest list.
          destination = create_iceberg_destination(
              columns=SIMPLE_COLUMNS,
              partition_by=SIMPLE_PARTITION_BY,
              minio_root_user=minio_root_user,
              minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              query_settings=FULL_PATHS_SETTING,
          )

      with When("export the partition with full paths in metadata"):
          export_partition(
              source_table=source_table,
              destination=destination,
              partition_id="2020",
              extra_settings=FULL_PATHS_SETTING,
          )

      with And("load the destination via PyIceberg (external reader)"):
          table = load_pyiceberg_table(
              destination=destination,
              minio_root_user=minio_root_user,
              minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
          )

      with Then("PyIceberg can scan the table and materialise the rows"):
          # PyIceberg's ProjectedSchema.to_arrow() walks every manifest
          # entry and asks its FileIO to open each data file. FileIO is
          # dispatched by URI scheme: "s3://..." -> the S3FileIO we
          # registered in load_pyiceberg_table; anything else -> the
          # default PyArrowFileIO which treats the string as a local
          # filesystem path. The latter is what happens today — we catch
          # that and rewrite the exception into an assertion that names
          # the offending data_file.file_path so the failure points
          # straight at the spec violation.
          try:
              arrow_table = table.scan().to_arrow()
          except (FileNotFoundError, OSError) as exc:
              offending = [df.file_path for df in get_data_files(
                  destination=destination,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              )]
              assert False, error(

Description
  External reader (PyIceberg) failed to open a data file written by EXPORT PARTITION. This is the user-visible effect of data_file.file_path being bucket-relative instead of an absolute URI — FileIO dispatch falls back to the local filesystem. Underlying error: FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_2b277e68_42af_11f1_b105_920007a4b2b6/data/data-2d06a153-e6df-41bd-bdab-52434fc90995.parquet'. Detail: [errno 2] No such file or directory. data_file.file_path values in this snapshot: ['/data/iceberg_2b277e68_42af_11f1_b105_920007a4b2b6/data/data-2d06a153-e6df-41bd-bdab-52434fc90995.parquet']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/manifest_integrity.py', line 516 in 'external_reader_round_trips_exported_data'

508\|          try:
509\|              arrow_table = table.scan().to_arrow()
510\|          except (FileNotFoundError, OSError) as exc:
511\|              offending = [df.file_path for df in get_data_files(
512\|                  destination=destination,
513\|                  minio_root_user=minio_root_user,
514\|                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
515\|              )]
516\|>             assert False, error(
517\|                  f"External reader (PyIceberg) failed to open a data file "
518\|                  f"written by EXPORT PARTITION. This is the user-visible "
519\|                  f"effect of data_file.file_path being bucket-relative "
/iceberg/export partition/glue catalog/catalogs/catalog﹕ external reader round-trips exported dataXFail 1s 34ms
Same MultipleFileWriter::startNewFile bug as the no_catalog external-reader scenario, but reached through a catalog-backed destination (REST / Glue). PyIceberg loads the table via the catalog, walks the manifest, and FileIO dispatches by URI scheme — data_file.file_path has no scheme so it falls back to the local filesystem and raises FileNotFoundError. Remove this xfail alongside the manifest-integrity one above.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/catalogs.py", line 427, in catalog_external_reader_round_trips_exported_data
    arrow_table = external_view.scan().to_arrow()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/table/__init__.py", line 1763, in to_arrow
    ).to_table(self.plan_files())
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1575, in to_table
    if table_result := future.result():
                       ^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1556, in _table_from_scan_task
    batches = list(self._record_batches_from_scan_tasks_and_deletes([task], deletes_per_file))
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1637, in _record_batches_from_scan_tasks_and_deletes
    for batch in batches:
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/venv/lib/python3.12/site-packages/pyiceberg/io/pyarrow.py", line 1367, in _task_to_record_batches
    with fs.open_input_file(path) as fin:
         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "pyarrow/_fs.pyx", line 787, in pyarrow._fs.FileSystem.open_input_file
  File "pyarrow/error.pxi", line 155, in pyarrow.lib.pyarrow_internal_check_status
  File "pyarrow/error.pxi", line 92, in pyarrow.lib.check_status
FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_2c7aef70_42af_11f1_9856_920007a4b2b6/data/data-7c0958ce-cb03-4a0a-895e-81536cff3274.parquet'. Detail: [errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/catalogs.py", line 471, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/catalogs.py", line 438, in catalog_external_reader_round_trips_exported_data
    assert False, error(
           ^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestScenario
  @Name("catalog: external reader round-trips exported data")
  def catalog_external_reader_round_trips_exported_data(
      self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password')
  ):
      """A non-ClickHouse Iceberg reader can follow the catalog's metadata
      pointer and read the rows back byte-exact.

      Mirrors
      :func:`iceberg.tests.export_partition.manifest_integrity.external_reader_round_trips_exported_data`
      but for catalog-managed tables: here the metadata pointer comes from
      the catalog (REST / Glue) rather than from scanning an S3 warehouse
      prefix. Catching a regression in which ``EXPORT PARTITION`` mutates the
      catalog pointer but leaves the data files unreadable would surface
      here — if it fires in the wild, users of Spark / Trino / duckdb / dbt
      with an Iceberg catalog would hit the same failure.

      Scenario is skipped in ``no_catalog`` mode.
      """
      _require_external_catalog()
      source_table = _seed_source()

      with Given("materialise a catalog-backed Iceberg destination via PyIceberg"):
          destination = create_pyiceberg_catalog_destination(
              schema=CATALOG_SCHEMA,
              partition_spec=CATALOG_PARTITION_SPEC,
              minio_root_user=minio_root_user,
              minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
          )

      with When("export the single partition"):
          # ``destination=`` dispatches the catalog-aware split of
          # (destination_database, destination_table) when waiting for the
          # status to flip to ``COMPLETED``; see Phase 2 notes in
          # ``steps/export_status.py``.
          export_partition(
              source_table=source_table,
              destination=destination,
              partition_id="2020",
              extra_settings=FULL_PATHS_SETTING,
          )

      with Then("PyIceberg (external reader) can materialise the exported rows"):
          handle = as_pyiceberg_handle(destination)
          assert handle is not None, error(
              "Expected catalog-backed destination to expose a PyIceberg handle"
          )
          external_view = handle["pyiceberg_catalog"].load_table(
              f"{handle['namespace']}.{handle['table_name']}"
          )
          try:
              arrow_table = external_view.scan().to_arrow()
          except (FileNotFoundError, OSError) as exc:
              # Same diagnostic shape as the no-catalog sibling: name the
              # offending ``data_file.file_path`` so the failure points
              # straight at the spec violation rather than a PyArrow trace.
              offending = []
              current_snapshot = external_view.current_snapshot()
              if current_snapshot is not None:
                  for manifest in current_snapshot.manifests(external_view.io):
                      for entry in manifest.fetch_manifest_entry(external_view.io):
                          offending.append(entry.data_file.file_path)
              assert False, error(

Description
  External reader (PyIceberg) could not open a data file committed through the catalog. FileIO dispatch fell back to the local filesystem, which is the symptom of data_file.file_path lacking a URI scheme. Underlying error: FileNotFoundError: [Errno 2] Failed to open local file '/data/iceberg_2c7aef70_42af_11f1_9856_920007a4b2b6/data/data-7c0958ce-cb03-4a0a-895e-81536cff3274.parquet'. Detail: [errno 2] No such file or directory. data_file.file_path values: ['/data/iceberg_2c7aef70_42af_11f1_9856_920007a4b2b6/data/data-7c0958ce-cb03-4a0a-895e-81536cff3274.parquet']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/catalogs.py', line 438 in 'catalog_external_reader_round_trips_exported_data'

430\|              # offending ``data_file.file_path`` so the failure points
431\|              # straight at the spec violation rather than a PyArrow trace.
432\|              offending = []
433\|              current_snapshot = external_view.current_snapshot()
434\|              if current_snapshot is not None:
435\|                  for manifest in current_snapshot.manifests(external_view.io):
436\|                      for entry in manifest.fetch_manifest_entry(external_view.io):
437\|                          offending.append(entry.data_file.file_path)
438\|>             assert False, error(
439\|                  f"External reader (PyIceberg) could not open a data file "
440\|                  f"committed through the catalog. FileIO dispatch fell back "
441\|                  f"to the local filesystem, which is the symptom of "
/iceberg/export partition/glue catalog/settings/output_format_parquet_compression_method flows to data filesXFail 4s 874ms
ClickHouse EXPORT PARTITION does not propagate format-level settings from the `ALTER ... EXPORT PARTITION ... SETTINGS` clause to the background export task. ExportReplicatedMergeTreePartitionManifest has no generic settings blob and ExportPartitionUtils::getContextCopyWithTaskSettings uses a hardcoded allowlist that omits format settings, so `output_format_parquet_compression_method` is dropped before ExportPartTask::executeStep calls getFormatSettings and the Parquet writer always falls back to the server-profile default codec. Intentional for now per dev; remove this entry once the manifest carries format settings end-to-end.
AssertionError
Traceback (most recent call last):
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 471, in 
    regression()
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 179, in capture_cluster_args
    return func(self, cluster_args=cluster_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../helpers/argparser.py", line 450, in capture_minio_args
    return func(self, minio_args=minio_args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/regression.py", line 461, in regression
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 74, in feature
    _load_modules(self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password'))
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/feature.py", line 58, in _load_modules
    Feature(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py", line 337, in feature
    Scenario(test=scenario, flags=TE)(
  File "/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py", line 319, in parquet_compression_method_flows_to_data_files
    assert normalised == {parquet_codec}, error(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Oops! Assertion failed

The following assertion was not satisfied
  @TestScenario
  @Name("output_format_parquet_compression_method flows to data files")
  def parquet_compression_method_flows_to_data_files(
      self, minio_root_user, minio_root_[masked]:Secret(name='minio_root_password')
  ):
      """Format-level settings must reach the Parquet writer.

      ``ExportPartTask.cpp`` resolves format settings via
      ``getFormatSettings(local_context)`` right before handing the block
      off to the destination writer. If the resolution ever stops
      picking up query-level overrides, the Parquet file ClickHouse
      writes would silently fall back to the server-wide default (``zstd``
      in recent versions). We export one partition with the setting
      pinned to ``zstd`` and another (against a fresh destination) with
      ``snappy``, then read the resulting Parquet data files via pyarrow
      and assert each row-group column actually reports the expected
      codec.

      Currently expected to fail: format-level settings are not carried
      into the background export task.
      ``ExportReplicatedMergeTreePartitionManifest`` persists only a
      hand-picked list of fields in ZK (``max_threads``,
      ``parallel_formatting``, ``parquet_parallel_encoding``,
      ``write_full_path_in_iceberg_metadata``, ...) and
      ``ExportPartitionUtils::getContextCopyWithTaskSettings`` applies an
      allowlist of the same shape; neither includes
      ``output_format_parquet_compression_method``. Whatever the user
      sets in ``ALTER ... EXPORT PARTITION ... SETTINGS`` is dropped
      before ``ExportPartTask::executeStep`` calls ``getFormatSettings``
      and the Parquet writer falls back to the server-profile default.
      Tracked as an ``xfails`` entry in ``iceberg/regression.py``; once
      the manifest carries format settings end-to-end the scenario will
      XPass and the entry can be removed.
      """
      source_table = _seed_source()

      compressions = (("zstd", "ZSTD"), ("snappy", "SNAPPY"))

      for ch_codec, parquet_codec in compressions:
          with Given(f"create a dedicated Iceberg destination for {ch_codec}"):
              # write_full_path_in_iceberg_metadata = 1 so PyIceberg can follow
              # the manifest-list pointer in metadata.json via S3 (see the
              # FULL_PATHS_SETTING docstring). It does not influence the
              # compression codec under test.
              destination = create_iceberg_destination(
                  columns=SIMPLE_COLUMNS,
                  partition_by=SIMPLE_PARTITION_BY,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
                  query_settings=FULL_PATHS_SETTING,
              )

          with When(f"export partition 2020 with {ch_codec} compression"):
              export_partition(
                  source_table=source_table,
                  destination=destination,
                  partition_id="2020",
                  extra_settings=FULL_PATHS_SETTING + [
                      ("output_format_parquet_compression_method", ch_codec),
                  ],
              )

          with Then(
              f"every column chunk of every {ch_codec} data file uses "
              f"{parquet_codec}"
          ):
              data_files = get_data_files(
                  destination=destination,
                  minio_root_user=minio_root_user,
                  minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
              )
              assert data_files, error(
                  f"No data files found in destination for codec {ch_codec}"
              )

              observed = set()
              for data_file in data_files:
                  bucket, key = _parse_s3_file_path(
                      data_file.file_path, DEFAULT_S3_WAREHOUSE_BUCKET
                  )
                  observed \|= _read_parquet_compression_codecs(
                      bucket=bucket,
                      key=key,
                      minio_root_user=minio_root_user,
                      minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
                  )

              # pyarrow reports codec names in upper-case. We compare
              # case-insensitively to avoid coupling the test to that
              # convention.
              normalised = {c.upper() for c in observed}
              assert normalised == {parquet_codec}, error(

Description
  Expected every column to use 'SNAPPY', got ['ZSTD']

Where
  File '/home/ubuntu/_work/ClickHouse/ClickHouse/iceberg/../iceberg/tests/export_partition/settings.py', line 319 in 'parquet_compression_method_flows_to_data_files'

311\|                      minio_root_user=minio_root_user,
312\|                      minio_root_[masked]:Secret(name='minio_root_password')=minio_root_[masked]:Secret(name='minio_root_password'),
313\|                  )
314\|  
315\|              # pyarrow reports codec names in upper-case. We compare
316\|              # case-insensitively to avoid coupling the test to that
317\|              # convention.
318\|              normalised = {c.upper() for c in observed}
319\|>             assert normalised == {parquet_codec}, error(
320\|                  f"Expected every column to use {parquet_codec!r}, "
321\|                  f"got {sorted(observed)!r}"
322\|              )

Results

Test Name Result Duration
/iceberg OK 1h 55m
/iceberg/iceberg engine OK 1h 12m
/iceberg/iceberg engine/glue catalog OK 1h 12m
/iceberg/iceberg engine/glue catalog/feature OK 45s 720ms
/iceberg/iceberg engine/glue catalog/feature/sanity OK 5s 212ms
/iceberg/iceberg engine/glue catalog/feature/sort order OK 14s 509ms
/iceberg/iceberg engine/glue catalog/feature/recreate table OK 2s 145ms
/iceberg/iceberg engine/glue catalog/feature/multiple tables OK 2s 377ms
/iceberg/iceberg engine/glue catalog/feature/recreate table and database OK 4s 259ms
/iceberg/iceberg engine/glue catalog/feature/rename database OK 1s 603ms
/iceberg/iceberg engine/glue catalog/feature/rename table from iceberg database OK 1s 699ms
/iceberg/iceberg engine/glue catalog/feature/use database OK 1s 766ms
/iceberg/iceberg engine/glue catalog/feature/array join OK 2s 122ms
/iceberg/iceberg engine/glue catalog/feature/show data lake catalogs in system tables OK 2s 92ms
/iceberg/iceberg engine/glue catalog/feature/show tables queries OK 2s 57ms
/iceberg/iceberg engine/glue catalog/feature/show databases queries OK 1s 924ms
/iceberg/iceberg engine/glue catalog/feature/boolean issue OK 2s 18ms
/iceberg/iceberg engine/glue catalog/feature/select from system databases OK 1s 922ms
/iceberg/iceberg engine/glue catalog/feature OK 14s 783ms
/iceberg/iceberg engine/glue catalog/feature/alter column OK 3s 156ms
/iceberg/iceberg engine/glue catalog/feature/alter comment columns OK 1s 775ms
/iceberg/iceberg engine/glue catalog/feature/alter partitions OK 3s 915ms
/iceberg/iceberg engine/glue catalog/feature/alter settings OK 1s 798ms
/iceberg/iceberg engine/glue catalog/feature/alter delete OK 1s 822ms
/iceberg/iceberg engine/glue catalog/feature/alter order by OK 2s 312ms
/iceberg/iceberg engine/glue catalog/column rbac OK 8m 48s
/iceberg/iceberg engine/glue catalog/column rbac/combination #0 OK 4s 969ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #1 OK 5s 169ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #2 OK 5s 246ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #3 OK 5s 449ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #4 OK 5s 245ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #5 OK 5s 179ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #6 OK 5s 508ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #7 OK 5s 338ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #8 OK 5s 316ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #9 OK 5s 783ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #10 OK 5s 332ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #11 OK 5s 417ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #12 OK 5s 130ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #13 OK 5s 104ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #14 OK 5s 334ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #15 OK 6s 615ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #16 OK 5s 631ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #17 OK 5s 380ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #18 OK 4s 979ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #19 OK 5s 19ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #20 OK 5s 148ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #21 OK 5s 169ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #22 OK 5s 22ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #23 OK 5s 32ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #24 OK 5s 270ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #25 OK 4s 946ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #26 OK 5s 232ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #27 OK 5s 246ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #28 OK 5s 359ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #29 OK 5s 859ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #30 OK 5s 6ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #31 OK 5s 141ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #32 OK 4s 948ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #33 OK 5s 249ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #34 OK 5s 49ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #35 OK 4s 921ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #36 OK 4s 947ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #37 OK 5s 35ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #38 OK 4s 839ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #39 OK 4s 791ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #40 OK 5s 113ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #41 OK 4s 983ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #42 OK 5s 714ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #43 OK 5s 179ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #44 OK 5s 121ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #45 OK 5s 521ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #46 OK 5s 11ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #47 OK 5s 600ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #48 OK 5s 88ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #49 OK 5s 264ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #50 OK 5s 112ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #51 OK 5s 908ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #52 OK 5s 25ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #53 OK 5s 266ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #54 OK 4s 759ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #55 OK 4s 782ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #56 OK 4s 809ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #57 OK 5s 340ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #58 OK 5s 476ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #59 OK 5s 283ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #60 OK 5s 812ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #61 OK 5s 108ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #62 OK 5s 139ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #63 OK 5s 278ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #64 OK 4s 899ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #65 OK 4s 932ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #66 OK 4s 822ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #67 OK 5s 780ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #68 OK 5s 406ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #69 OK 4s 914ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #70 OK 5s 28ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #71 OK 5s 343ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #72 OK 5s 567ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #73 OK 5s 203ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #74 OK 5s 117ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #75 OK 5s 202ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #76 OK 5s 577ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #77 OK 4s 833ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #78 OK 6s 230ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #79 OK 5s 206ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #80 OK 4s 881ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #81 OK 4s 981ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #82 OK 5s 131ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #83 OK 5s 501ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #84 OK 5s 383ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #85 OK 5s 631ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #86 OK 5s 91ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #87 OK 5s 366ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #88 OK 4s 786ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #89 OK 5s 19ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #90 OK 5s 220ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #91 OK 6s 108ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #92 OK 5s 290ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #93 OK 4s 852ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #94 OK 5s 185ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #95 OK 5s 163ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #96 OK 5s 116ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #97 OK 6s 364ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #98 OK 5s 9ms
/iceberg/iceberg engine/glue catalog/column rbac/combination #99 OK 5s 412ms
/iceberg/iceberg engine/glue catalog/predicate push down OK 51s 296ms
/iceberg/iceberg engine/glue catalog/predicate push down/check input format parquet filter push down OK 46s 611ms
/iceberg/iceberg engine/glue catalog/predicate push down/issue with decimal column XFail 2s 301ms
/iceberg/iceberg engine/glue catalog/predicate push down/issue with float column XFail 2s 381ms
/iceberg/iceberg engine/glue catalog/feature OK 7s 623ms
/iceberg/iceberg engine/glue catalog/feature/select privilege OK 2s 453ms
/iceberg/iceberg engine/glue catalog/feature/drop table privilege OK 2s 639ms
/iceberg/iceberg engine/glue catalog/feature/drop database privilege OK 2s 313ms
/iceberg/iceberg engine/glue catalog/feature OK 1m 22s
/iceberg/iceberg engine/glue catalog/feature/row policies OK 1m 22s
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #0 OK 796ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #1 OK 820ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #2 OK 758ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #3 OK 680ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #4 OK 832ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #5 OK 837ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #6 OK 772ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #7 OK 741ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #8 OK 824ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #9 OK 820ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #10 OK 793ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #11 OK 756ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #12 OK 741ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #13 OK 683ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #14 OK 704ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #15 OK 701ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #16 OK 752ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #17 OK 813ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #18 OK 821ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #19 OK 774ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #20 OK 756ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #21 OK 730ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #22 OK 767ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #23 OK 826ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #24 OK 822ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #25 OK 699ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #26 OK 862ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #27 OK 805ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #28 OK 751ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #29 OK 848ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #30 OK 827ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #31 OK 829ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #32 OK 784ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #33 OK 880ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #34 OK 925ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #35 OK 812ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #36 OK 836ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #37 OK 808ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #38 OK 878ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #39 OK 881ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #40 OK 670ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #41 OK 769ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #42 OK 728ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #43 OK 865ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #44 OK 819ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #45 OK 872ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #46 OK 879ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #47 OK 772ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #48 OK 818ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #49 OK 742ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #50 OK 694ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #51 OK 841ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #52 OK 794ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #53 OK 865ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #54 OK 785ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #55 OK 823ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #56 OK 900ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #57 OK 885ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #58 OK 823ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #59 OK 696ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #60 OK 844ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #61 OK 830ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #62 OK 842ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #63 OK 728ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #64 OK 903ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #65 OK 800ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #66 OK 790ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #67 OK 850ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #68 OK 822ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #69 OK 755ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #70 OK 827ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #71 OK 670ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #72 OK 829ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #73 OK 732ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #74 OK 822ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #75 OK 740ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #76 OK 749ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #77 OK 749ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #78 OK 685ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #79 OK 791ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #80 OK 828ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #81 OK 796ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #82 OK 689ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #83 OK 751ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #84 OK 811ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #85 OK 744ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #86 OK 687ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #87 OK 798ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #88 OK 806ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #89 OK 788ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #90 OK 718ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #91 OK 681ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #92 OK 737ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #93 OK 787ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #94 OK 672ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #95 OK 747ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #96 OK 817ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #97 OK 731ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #98 OK 735ms
/iceberg/iceberg engine/glue catalog/feature/row policies/combination #99 OK 764ms
/iceberg/iceberg engine/glue catalog/sql clauses OK 4s 544ms
/iceberg/iceberg engine/glue catalog/sql clauses/where clause OK 555ms
/iceberg/iceberg engine/glue catalog/sql clauses/prewhere clause OK 149ms
/iceberg/iceberg engine/glue catalog/sql clauses/group by clause OK 125ms
/iceberg/iceberg engine/glue catalog/sql clauses/having clause OK 126ms
/iceberg/iceberg engine/glue catalog/sql clauses/limit clause OK 265ms
/iceberg/iceberg engine/glue catalog/sql clauses/distinct clause OK 131ms
/iceberg/iceberg engine/glue catalog/sql clauses/join clause OK 719ms
/iceberg/iceberg engine/glue catalog/sql clauses/order by clause OK 664ms
/iceberg/iceberg engine/glue catalog/feature OK 23m 9s
/iceberg/iceberg engine/glue catalog/feature/run equality deletes combinations OK 23m 9s
/iceberg/iceberg engine/glue catalog/feature OK 5s 75ms
/iceberg/iceberg engine/glue catalog/feature/overwrite OK 2s 598ms
/iceberg/iceberg engine/glue catalog/feature/append OK 2s 475ms
/iceberg/iceberg engine/glue catalog/schema evolution OK 19m 14s
/iceberg/iceberg engine/glue catalog/schema evolution/#0 OK 11s 763ms
/iceberg/iceberg engine/glue catalog/schema evolution/#1 OK 11s 960ms
/iceberg/iceberg engine/glue catalog/schema evolution/#2 OK 11s 602ms
/iceberg/iceberg engine/glue catalog/schema evolution/#3 OK 11s 290ms
/iceberg/iceberg engine/glue catalog/schema evolution/#4 OK 11s 819ms
/iceberg/iceberg engine/glue catalog/schema evolution/#5 OK 11s 785ms
/iceberg/iceberg engine/glue catalog/schema evolution/#6 OK 11s 361ms
/iceberg/iceberg engine/glue catalog/schema evolution/#7 OK 11s 738ms
/iceberg/iceberg engine/glue catalog/schema evolution/#8 OK 11s 705ms
/iceberg/iceberg engine/glue catalog/schema evolution/#9 OK 11s 361ms
/iceberg/iceberg engine/glue catalog/schema evolution/#10 OK 11s 246ms
/iceberg/iceberg engine/glue catalog/schema evolution/#11 OK 11s 855ms
/iceberg/iceberg engine/glue catalog/schema evolution/#12 OK 11s 385ms
/iceberg/iceberg engine/glue catalog/schema evolution/#13 OK 11s 487ms
/iceberg/iceberg engine/glue catalog/schema evolution/#14 OK 12s 82ms
/iceberg/iceberg engine/glue catalog/schema evolution/#15 OK 11s 112ms
/iceberg/iceberg engine/glue catalog/schema evolution/#16 OK 11s 543ms
/iceberg/iceberg engine/glue catalog/schema evolution/#17 OK 11s 321ms
/iceberg/iceberg engine/glue catalog/schema evolution/#18 OK 11s 907ms
/iceberg/iceberg engine/glue catalog/schema evolution/#19 OK 11s 406ms
/iceberg/iceberg engine/glue catalog/schema evolution/#20 OK 11s 809ms
/iceberg/iceberg engine/glue catalog/schema evolution/#21 OK 11s 603ms
/iceberg/iceberg engine/glue catalog/schema evolution/#22 OK 11s 425ms
/iceberg/iceberg engine/glue catalog/schema evolution/#23 OK 11s 693ms
/iceberg/iceberg engine/glue catalog/schema evolution/#24 OK 11s 974ms
/iceberg/iceberg engine/glue catalog/schema evolution/#25 OK 11s 573ms
/iceberg/iceberg engine/glue catalog/schema evolution/#26 OK 11s 15ms
/iceberg/iceberg engine/glue catalog/schema evolution/#27 OK 11s 723ms
/iceberg/iceberg engine/glue catalog/schema evolution/#28 OK 11s 191ms
/iceberg/iceberg engine/glue catalog/schema evolution/#29 OK 11s 942ms
/iceberg/iceberg engine/glue catalog/schema evolution/#30 OK 12s 191ms
/iceberg/iceberg engine/glue catalog/schema evolution/#31 OK 11s 520ms
/iceberg/iceberg engine/glue catalog/schema evolution/#32 OK 11s 583ms
/iceberg/iceberg engine/glue catalog/schema evolution/#33 OK 11s 283ms
/iceberg/iceberg engine/glue catalog/schema evolution/#34 OK 11s 472ms
/iceberg/iceberg engine/glue catalog/schema evolution/#35 OK 11s 478ms
/iceberg/iceberg engine/glue catalog/schema evolution/#36 OK 11s 835ms
/iceberg/iceberg engine/glue catalog/schema evolution/#37 OK 11s 609ms
/iceberg/iceberg engine/glue catalog/schema evolution/#38 OK 11s 206ms
/iceberg/iceberg engine/glue catalog/schema evolution/#39 OK 11s 460ms
/iceberg/iceberg engine/glue catalog/schema evolution/#40 OK 11s 613ms
/iceberg/iceberg engine/glue catalog/schema evolution/#41 OK 11s 637ms
/iceberg/iceberg engine/glue catalog/schema evolution/#42 OK 11s 484ms
/iceberg/iceberg engine/glue catalog/schema evolution/#43 OK 11s 144ms
/iceberg/iceberg engine/glue catalog/schema evolution/#44 OK 11s 186ms
/iceberg/iceberg engine/glue catalog/schema evolution/#45 OK 11s 322ms
/iceberg/iceberg engine/glue catalog/schema evolution/#46 OK 11s 150ms
/iceberg/iceberg engine/glue catalog/schema evolution/#47 OK 11s 627ms
/iceberg/iceberg engine/glue catalog/schema evolution/#48 OK 11s 538ms
/iceberg/iceberg engine/glue catalog/schema evolution/#49 OK 10s 936ms
/iceberg/iceberg engine/glue catalog/schema evolution/#50 OK 11s 819ms
/iceberg/iceberg engine/glue catalog/schema evolution/#51 OK 11s 675ms
/iceberg/iceberg engine/glue catalog/schema evolution/#52 OK 11s 777ms
/iceberg/iceberg engine/glue catalog/schema evolution/#53 OK 11s 600ms
/iceberg/iceberg engine/glue catalog/schema evolution/#54 OK 11s 96ms
/iceberg/iceberg engine/glue catalog/schema evolution/#55 OK 11s 372ms
/iceberg/iceberg engine/glue catalog/schema evolution/#56 OK 12s 136ms
/iceberg/iceberg engine/glue catalog/schema evolution/#57 OK 11s 279ms
/iceberg/iceberg engine/glue catalog/schema evolution/#58 OK 11s 511ms
/iceberg/iceberg engine/glue catalog/schema evolution/#59 OK 11s 819ms
/iceberg/iceberg engine/glue catalog/schema evolution/#60 OK 11s 711ms
/iceberg/iceberg engine/glue catalog/schema evolution/#61 OK 11s 633ms
/iceberg/iceberg engine/glue catalog/schema evolution/#62 OK 11s 440ms
/iceberg/iceberg engine/glue catalog/schema evolution/#63 OK 11s 364ms
/iceberg/iceberg engine/glue catalog/schema evolution/#64 OK 11s 416ms
/iceberg/iceberg engine/glue catalog/schema evolution/#65 OK 11s 519ms
/iceberg/iceberg engine/glue catalog/schema evolution/#66 OK 11s 549ms
/iceberg/iceberg engine/glue catalog/schema evolution/#67 OK 10s 726ms
/iceberg/iceberg engine/glue catalog/schema evolution/#68 OK 11s 725ms
/iceberg/iceberg engine/glue catalog/schema evolution/#69 OK 11s 45ms
/iceberg/iceberg engine/glue catalog/schema evolution/#70 OK 11s 765ms
/iceberg/iceberg engine/glue catalog/schema evolution/#71 OK 11s 546ms
/iceberg/iceberg engine/glue catalog/schema evolution/#72 OK 12s 111ms
/iceberg/iceberg engine/glue catalog/schema evolution/#73 OK 12s 62ms
/iceberg/iceberg engine/glue catalog/schema evolution/#74 OK 11s 287ms
/iceberg/iceberg engine/glue catalog/schema evolution/#75 OK 11s 583ms
/iceberg/iceberg engine/glue catalog/schema evolution/#76 OK 11s 777ms
/iceberg/iceberg engine/glue catalog/schema evolution/#77 OK 11s 38ms
/iceberg/iceberg engine/glue catalog/schema evolution/#78 OK 11s 766ms
/iceberg/iceberg engine/glue catalog/schema evolution/#79 OK 11s 716ms
/iceberg/iceberg engine/glue catalog/schema evolution/#80 OK 11s 422ms
/iceberg/iceberg engine/glue catalog/schema evolution/#81 OK 11s 546ms
/iceberg/iceberg engine/glue catalog/schema evolution/#82 OK 12s 349ms
/iceberg/iceberg engine/glue catalog/schema evolution/#83 OK 11s 62ms
/iceberg/iceberg engine/glue catalog/schema evolution/#84 OK 11s 520ms
/iceberg/iceberg engine/glue catalog/schema evolution/#85 OK 11s 281ms
/iceberg/iceberg engine/glue catalog/schema evolution/#86 OK 11s 202ms
/iceberg/iceberg engine/glue catalog/schema evolution/#87 OK 11s 389ms
/iceberg/iceberg engine/glue catalog/schema evolution/#88 OK 11s 479ms
/iceberg/iceberg engine/glue catalog/schema evolution/#89 OK 11s 483ms
/iceberg/iceberg engine/glue catalog/schema evolution/#90 OK 11s 316ms
/iceberg/iceberg engine/glue catalog/schema evolution/#91 OK 11s 411ms
/iceberg/iceberg engine/glue catalog/schema evolution/#92 OK 12s 107ms
/iceberg/iceberg engine/glue catalog/schema evolution/#93 OK 11s 785ms
/iceberg/iceberg engine/glue catalog/schema evolution/#94 OK 11s 351ms
/iceberg/iceberg engine/glue catalog/schema evolution/#95 OK 11s 673ms
/iceberg/iceberg engine/glue catalog/schema evolution/#96 OK 11s 223ms
/iceberg/iceberg engine/glue catalog/schema evolution/#97 OK 11s 288ms
/iceberg/iceberg engine/glue catalog/schema evolution/#98 OK 11s 732ms
/iceberg/iceberg engine/glue catalog/schema evolution/#99 OK 11s 892ms
/iceberg/iceberg engine/glue catalog/swarm OK 3s 73ms
/iceberg/iceberg engine/glue catalog/swarm/swarm examples OK 3s 72ms
/iceberg/iceberg engine/glue catalog/nested datatypes OK 2m 9s
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 1 OK 2s 343ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 51 OK 2s 840ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 101 OK 3s 404ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 151 OK 3s 656ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 201 OK 3s 889ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 251 OK 4s 280ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 301 OK 4s 572ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 351 OK 5s 452ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 401 OK 5s 755ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 451 OK 6s 248ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 501 OK 7s 17ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 551 OK 7s 93ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 601 OK 7s 601ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 651 OK 7s 666ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 701 OK 7s 962ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 751 OK 9s 99ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 801 OK 9s 511ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 851 OK 9s 797ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 901 OK 10s 351ms
/iceberg/iceberg engine/glue catalog/nested datatypes/number of columns 951 OK 10s 936ms
/iceberg/iceberg engine/glue catalog/partition evolution OK 9m 55s
/iceberg/iceberg engine/glue catalog/partition evolution/#0 OK 5s 623ms
/iceberg/iceberg engine/glue catalog/partition evolution/#1 OK 5s 905ms
/iceberg/iceberg engine/glue catalog/partition evolution/#2 OK 5s 636ms
/iceberg/iceberg engine/glue catalog/partition evolution/#3 OK 5s 811ms
/iceberg/iceberg engine/glue catalog/partition evolution/#4 OK 5s 820ms
/iceberg/iceberg engine/glue catalog/partition evolution/#5 OK 5s 777ms
/iceberg/iceberg engine/glue catalog/partition evolution/#6 OK 6s 169ms
/iceberg/iceberg engine/glue catalog/partition evolution/#7 OK 6s 184ms
/iceberg/iceberg engine/glue catalog/partition evolution/#8 OK 5s 933ms
/iceberg/iceberg engine/glue catalog/partition evolution/#9 OK 5s 788ms
/iceberg/iceberg engine/glue catalog/partition evolution/#10 OK 6s 86ms
/iceberg/iceberg engine/glue catalog/partition evolution/#11 OK 5s 609ms
/iceberg/iceberg engine/glue catalog/partition evolution/#12 OK 5s 764ms
/iceberg/iceberg engine/glue catalog/partition evolution/#13 OK 5s 837ms
/iceberg/iceberg engine/glue catalog/partition evolution/#14 OK 5s 932ms
/iceberg/iceberg engine/glue catalog/partition evolution/#15 OK 5s 797ms
/iceberg/iceberg engine/glue catalog/partition evolution/#16 OK 6s 14ms
/iceberg/iceberg engine/glue catalog/partition evolution/#17 OK 6s 33ms
/iceberg/iceberg engine/glue catalog/partition evolution/#18 OK 6s 21ms
/iceberg/iceberg engine/glue catalog/partition evolution/#19 OK 6s 32ms
/iceberg/iceberg engine/glue catalog/partition evolution/#20 OK 5s 785ms
/iceberg/iceberg engine/glue catalog/partition evolution/#21 OK 5s 810ms
/iceberg/iceberg engine/glue catalog/partition evolution/#22 OK 6s 134ms
/iceberg/iceberg engine/glue catalog/partition evolution/#23 OK 6s 327ms
/iceberg/iceberg engine/glue catalog/partition evolution/#24 OK 5s 872ms
/iceberg/iceberg engine/glue catalog/partition evolution/#25 OK 5s 918ms
/iceberg/iceberg engine/glue catalog/partition evolution/#26 OK 6s 201ms
/iceberg/iceberg engine/glue catalog/partition evolution/#27 OK 6s 141ms
/iceberg/iceberg engine/glue catalog/partition evolution/#28 OK 5s 943ms
/iceberg/iceberg engine/glue catalog/partition evolution/#29 OK 5s 872ms
/iceberg/iceberg engine/glue catalog/partition evolution/#30 OK 6s 135ms
/iceberg/iceberg engine/glue catalog/partition evolution/#31 OK 5s 797ms
/iceberg/iceberg engine/glue catalog/partition evolution/#32 OK 6s 41ms
/iceberg/iceberg engine/glue catalog/partition evolution/#33 OK 6s 41ms
/iceberg/iceberg engine/glue catalog/partition evolution/#34 OK 6s 283ms
/iceberg/iceberg engine/glue catalog/partition evolution/#35 OK 5s 942ms
/iceberg/iceberg engine/glue catalog/partition evolution/#36 OK 5s 655ms
/iceberg/iceberg engine/glue catalog/partition evolution/#37 OK 6s 36ms
/iceberg/iceberg engine/glue catalog/partition evolution/#38 OK 6s 175ms
/iceberg/iceberg engine/glue catalog/partition evolution/#39 OK 5s 694ms
/iceberg/iceberg engine/glue catalog/partition evolution/#40 OK 5s 966ms
/iceberg/iceberg engine/glue catalog/partition evolution/#41 OK 5s 897ms
/iceberg/iceberg engine/glue catalog/partition evolution/#42 OK 6s 106ms
/iceberg/iceberg engine/glue catalog/partition evolution/#43 OK 6s 106ms
/iceberg/iceberg engine/glue catalog/partition evolution/#44 OK 6s 55ms
/iceberg/iceberg engine/glue catalog/partition evolution/#45 OK 6s 264ms
/iceberg/iceberg engine/glue catalog/partition evolution/#46 OK 6s 149ms
/iceberg/iceberg engine/glue catalog/partition evolution/#47 OK 5s 886ms
/iceberg/iceberg engine/glue catalog/partition evolution/#48 OK 5s 874ms
/iceberg/iceberg engine/glue catalog/partition evolution/#49 OK 5s 672ms
/iceberg/iceberg engine/glue catalog/partition evolution/#50 OK 5s 876ms
/iceberg/iceberg engine/glue catalog/partition evolution/#51 OK 5s 926ms
/iceberg/iceberg engine/glue catalog/partition evolution/#52 OK 6s 121ms
/iceberg/iceberg engine/glue catalog/partition evolution/#53 OK 5s 993ms
/iceberg/iceberg engine/glue catalog/partition evolution/#54 OK 6s 17ms
/iceberg/iceberg engine/glue catalog/partition evolution/#55 OK 6s 315ms
/iceberg/iceberg engine/glue catalog/partition evolution/#56 OK 5s 931ms
/iceberg/iceberg engine/glue catalog/partition evolution/#57 OK 5s 764ms
/iceberg/iceberg engine/glue catalog/partition evolution/#58 OK 5s 980ms
/iceberg/iceberg engine/glue catalog/partition evolution/#59 OK 5s 976ms
/iceberg/iceberg engine/glue catalog/partition evolution/#60 OK 5s 653ms
/iceberg/iceberg engine/glue catalog/partition evolution/#61 OK 5s 695ms
/iceberg/iceberg engine/glue catalog/partition evolution/#62 OK 5s 937ms
/iceberg/iceberg engine/glue catalog/partition evolution/#63 OK 6s 483ms
/iceberg/iceberg engine/glue catalog/partition evolution/#64 OK 5s 977ms
/iceberg/iceberg engine/glue catalog/partition evolution/#65 OK 6s 158ms
/iceberg/iceberg engine/glue catalog/partition evolution/#66 OK 5s 755ms
/iceberg/iceberg engine/glue catalog/partition evolution/#67 OK 6s 56ms
/iceberg/iceberg engine/glue catalog/partition evolution/#68 OK 5s 820ms
/iceberg/iceberg engine/glue catalog/partition evolution/#69 OK 5s 816ms
/iceberg/iceberg engine/glue catalog/partition evolution/#70 OK 5s 811ms
/iceberg/iceberg engine/glue catalog/partition evolution/#71 OK 5s 837ms
/iceberg/iceberg engine/glue catalog/partition evolution/#72 OK 5s 486ms
/iceberg/iceberg engine/glue catalog/partition evolution/#73 OK 6s 63ms
/iceberg/iceberg engine/glue catalog/partition evolution/#74 OK 6s 334ms
/iceberg/iceberg engine/glue catalog/partition evolution/#75 OK 6s 359ms
/iceberg/iceberg engine/glue catalog/partition evolution/#76 OK 6s 36ms
/iceberg/iceberg engine/glue catalog/partition evolution/#77 OK 5s 795ms
/iceberg/iceberg engine/glue catalog/partition evolution/#78 OK 5s 617ms
/iceberg/iceberg engine/glue catalog/partition evolution/#79 OK 5s 991ms
/iceberg/iceberg engine/glue catalog/partition evolution/#80 OK 5s 675ms
/iceberg/iceberg engine/glue catalog/partition evolution/#81 OK 5s 754ms
/iceberg/iceberg engine/glue catalog/partition evolution/#82 OK 5s 734ms
/iceberg/iceberg engine/glue catalog/partition evolution/#83 OK 6s 97ms
/iceberg/iceberg engine/glue catalog/partition evolution/#84 OK 6s 44ms
/iceberg/iceberg engine/glue catalog/partition evolution/#85 OK 5s 912ms
/iceberg/iceberg engine/glue catalog/partition evolution/#86 OK 5s 971ms
/iceberg/iceberg engine/glue catalog/partition evolution/#87 OK 6s 213ms
/iceberg/iceberg engine/glue catalog/partition evolution/#88 OK 5s 881ms
/iceberg/iceberg engine/glue catalog/partition evolution/#89 OK 5s 905ms
/iceberg/iceberg engine/glue catalog/partition evolution/#90 OK 5s 720ms
/iceberg/iceberg engine/glue catalog/partition evolution/#91 OK 6s 161ms
/iceberg/iceberg engine/glue catalog/partition evolution/#92 OK 5s 884ms
/iceberg/iceberg engine/glue catalog/partition evolution/#93 OK 5s 778ms
/iceberg/iceberg engine/glue catalog/partition evolution/#94 OK 6s 235ms
/iceberg/iceberg engine/glue catalog/partition evolution/#95 OK 6s 264ms
/iceberg/iceberg engine/glue catalog/partition evolution/#96 OK 6s 279ms
/iceberg/iceberg engine/glue catalog/partition evolution/#97 OK 6s 11ms
/iceberg/iceberg engine/glue catalog/partition evolution/#98 OK 6s 201ms
/iceberg/iceberg engine/glue catalog/partition evolution/#99 OK 5s 887ms
/iceberg/iceberg engine/glue catalog/iceberg partition pruning OK 22s 826ms
/iceberg/iceberg engine/glue catalog/iceberg partition pruning/check iceberg partition pruning with integer type XFail 4s 727ms
/iceberg/iceberg engine/glue catalog/iceberg partition pruning/check partition pruning with complex where clause XFail 3s 400ms
/iceberg/iceberg engine/glue catalog/iceberg partition pruning/partition pruning with date type XFail 4s 465ms
/iceberg/iceberg engine/glue catalog/iceberg partition pruning/non partitioned table OK 10s 230ms
/iceberg/iceberg engine/glue catalog/datatypes OK 15s 212ms
/iceberg/iceberg engine/glue catalog/datatypes/data types check where OK 15s 211ms
/iceberg/iceberg engine/glue catalog/iceberg iterator race condition OK 4m 37s
/iceberg/iceberg engine/glue catalog/iceberg iterator race condition/iceberg iterator race condition OK 4m 37s
/iceberg/iceberg engine/glue catalog/dot separated column names OK 3ms
/iceberg/iceberg engine/glue catalog/dot separated column names/sanity dot separated column names Skip 1ms
/iceberg/iceberg engine/glue catalog/dot separated column names/all datatypes with dot separated columns Skip 1ms
/iceberg/iceberg engine/glue catalog/show_data_lake_catalogs hint OK 5s 887ms
/iceberg/iceberg engine/glue catalog/show_data_lake_catalogs hint/similar table names hint OK 5s 886ms
/iceberg/iceberg table engine OK 21m 27s
/iceberg/iceberg table engine/feature OK 12m 44s
/iceberg/iceberg table engine/feature/row policies OK 12m 44s
/iceberg/iceberg table engine/feature/row policies/combination #0 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #1 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #2 OK 749ms
/iceberg/iceberg table engine/feature/row policies/combination #3 OK 695ms
/iceberg/iceberg table engine/feature/row policies/combination #4 OK 737ms
/iceberg/iceberg table engine/feature/row policies/combination #5 OK 842ms
/iceberg/iceberg table engine/feature/row policies/combination #6 OK 773ms
/iceberg/iceberg table engine/feature/row policies/combination #7 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #8 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #9 OK 810ms
/iceberg/iceberg table engine/feature/row policies/combination #10 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #11 OK 689ms
/iceberg/iceberg table engine/feature/row policies/combination #12 OK 748ms
/iceberg/iceberg table engine/feature/row policies/combination #13 OK 671ms
/iceberg/iceberg table engine/feature/row policies/combination #14 OK 654ms
/iceberg/iceberg table engine/feature/row policies/combination #15 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #16 OK 658ms
/iceberg/iceberg table engine/feature/row policies/combination #17 OK 826ms
/iceberg/iceberg table engine/feature/row policies/combination #18 OK 825ms
/iceberg/iceberg table engine/feature/row policies/combination #19 OK 659ms
/iceberg/iceberg table engine/feature/row policies/combination #20 OK 782ms
/iceberg/iceberg table engine/feature/row policies/combination #21 OK 731ms
/iceberg/iceberg table engine/feature/row policies/combination #22 OK 737ms
/iceberg/iceberg table engine/feature/row policies/combination #23 OK 824ms
/iceberg/iceberg table engine/feature/row policies/combination #24 OK 821ms
/iceberg/iceberg table engine/feature/row policies/combination #25 OK 675ms
/iceberg/iceberg table engine/feature/row policies/combination #26 OK 760ms
/iceberg/iceberg table engine/feature/row policies/combination #27 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #28 OK 715ms
/iceberg/iceberg table engine/feature/row policies/combination #29 OK 834ms
/iceberg/iceberg table engine/feature/row policies/combination #30 OK 824ms
/iceberg/iceberg table engine/feature/row policies/combination #31 OK 763ms
/iceberg/iceberg table engine/feature/row policies/combination #32 OK 658ms
/iceberg/iceberg table engine/feature/row policies/combination #33 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #34 OK 801ms
/iceberg/iceberg table engine/feature/row policies/combination #35 OK 657ms
/iceberg/iceberg table engine/feature/row policies/combination #36 OK 741ms
/iceberg/iceberg table engine/feature/row policies/combination #37 OK 713ms
/iceberg/iceberg table engine/feature/row policies/combination #38 OK 817ms
/iceberg/iceberg table engine/feature/row policies/combination #39 OK 653ms
/iceberg/iceberg table engine/feature/row policies/combination #40 OK 659ms
/iceberg/iceberg table engine/feature/row policies/combination #41 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #42 OK 663ms
/iceberg/iceberg table engine/feature/row policies/combination #43 OK 800ms
/iceberg/iceberg table engine/feature/row policies/combination #44 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #45 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #46 OK 792ms
/iceberg/iceberg table engine/feature/row policies/combination #47 OK 722ms
/iceberg/iceberg table engine/feature/row policies/combination #48 OK 787ms
/iceberg/iceberg table engine/feature/row policies/combination #49 OK 739ms
/iceberg/iceberg table engine/feature/row policies/combination #50 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #51 OK 791ms
/iceberg/iceberg table engine/feature/row policies/combination #52 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #53 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #54 OK 759ms
/iceberg/iceberg table engine/feature/row policies/combination #55 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #56 OK 845ms
/iceberg/iceberg table engine/feature/row policies/combination #57 OK 822ms
/iceberg/iceberg table engine/feature/row policies/combination #58 OK 789ms
/iceberg/iceberg table engine/feature/row policies/combination #59 OK 653ms
/iceberg/iceberg table engine/feature/row policies/combination #60 OK 766ms
/iceberg/iceberg table engine/feature/row policies/combination #61 OK 792ms
/iceberg/iceberg table engine/feature/row policies/combination #62 OK 786ms
/iceberg/iceberg table engine/feature/row policies/combination #63 OK 677ms
/iceberg/iceberg table engine/feature/row policies/combination #64 OK 816ms
/iceberg/iceberg table engine/feature/row policies/combination #65 OK 748ms
/iceberg/iceberg table engine/feature/row policies/combination #66 OK 728ms
/iceberg/iceberg table engine/feature/row policies/combination #67 OK 827ms
/iceberg/iceberg table engine/feature/row policies/combination #68 OK 757ms
/iceberg/iceberg table engine/feature/row policies/combination #69 OK 756ms
/iceberg/iceberg table engine/feature/row policies/combination #70 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #71 OK 658ms
/iceberg/iceberg table engine/feature/row policies/combination #72 OK 809ms
/iceberg/iceberg table engine/feature/row policies/combination #73 OK 708ms
/iceberg/iceberg table engine/feature/row policies/combination #74 OK 789ms
/iceberg/iceberg table engine/feature/row policies/combination #75 OK 757ms
/iceberg/iceberg table engine/feature/row policies/combination #76 OK 755ms
/iceberg/iceberg table engine/feature/row policies/combination #77 OK 740ms
/iceberg/iceberg table engine/feature/row policies/combination #78 OK 712ms
/iceberg/iceberg table engine/feature/row policies/combination #79 OK 844ms
/iceberg/iceberg table engine/feature/row policies/combination #80 OK 855ms
/iceberg/iceberg table engine/feature/row policies/combination #81 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #82 OK 696ms
/iceberg/iceberg table engine/feature/row policies/combination #83 OK 763ms
/iceberg/iceberg table engine/feature/row policies/combination #84 OK 738ms
/iceberg/iceberg table engine/feature/row policies/combination #85 OK 735ms
/iceberg/iceberg table engine/feature/row policies/combination #86 OK 677ms
/iceberg/iceberg table engine/feature/row policies/combination #87 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #88 OK 824ms
/iceberg/iceberg table engine/feature/row policies/combination #89 OK 831ms
/iceberg/iceberg table engine/feature/row policies/combination #90 OK 709ms
/iceberg/iceberg table engine/feature/row policies/combination #91 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #92 OK 770ms
/iceberg/iceberg table engine/feature/row policies/combination #93 OK 786ms
/iceberg/iceberg table engine/feature/row policies/combination #94 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #95 OK 743ms
/iceberg/iceberg table engine/feature/row policies/combination #96 OK 827ms
/iceberg/iceberg table engine/feature/row policies/combination #97 OK 735ms
/iceberg/iceberg table engine/feature/row policies/combination #98 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #99 OK 730ms
/iceberg/iceberg table engine/feature/row policies/combination #100 OK 744ms
/iceberg/iceberg table engine/feature/row policies/combination #101 OK 784ms
/iceberg/iceberg table engine/feature/row policies/combination #102 OK 756ms
/iceberg/iceberg table engine/feature/row policies/combination #103 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #104 OK 833ms
/iceberg/iceberg table engine/feature/row policies/combination #105 OK 681ms
/iceberg/iceberg table engine/feature/row policies/combination #106 OK 859ms
/iceberg/iceberg table engine/feature/row policies/combination #107 OK 672ms
/iceberg/iceberg table engine/feature/row policies/combination #108 OK 667ms
/iceberg/iceberg table engine/feature/row policies/combination #109 OK 676ms
/iceberg/iceberg table engine/feature/row policies/combination #110 OK 692ms
/iceberg/iceberg table engine/feature/row policies/combination #111 OK 676ms
/iceberg/iceberg table engine/feature/row policies/combination #112 OK 646ms
/iceberg/iceberg table engine/feature/row policies/combination #113 OK 798ms
/iceberg/iceberg table engine/feature/row policies/combination #114 OK 681ms
/iceberg/iceberg table engine/feature/row policies/combination #115 OK 728ms
/iceberg/iceberg table engine/feature/row policies/combination #116 OK 787ms
/iceberg/iceberg table engine/feature/row policies/combination #117 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #118 OK 672ms
/iceberg/iceberg table engine/feature/row policies/combination #119 OK 814ms
/iceberg/iceberg table engine/feature/row policies/combination #120 OK 819ms
/iceberg/iceberg table engine/feature/row policies/combination #121 OK 744ms
/iceberg/iceberg table engine/feature/row policies/combination #122 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #123 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #124 OK 750ms
/iceberg/iceberg table engine/feature/row policies/combination #125 OK 821ms
/iceberg/iceberg table engine/feature/row policies/combination #126 OK 822ms
/iceberg/iceberg table engine/feature/row policies/combination #127 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #128 OK 742ms
/iceberg/iceberg table engine/feature/row policies/combination #129 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #130 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #131 OK 822ms
/iceberg/iceberg table engine/feature/row policies/combination #132 OK 765ms
/iceberg/iceberg table engine/feature/row policies/combination #133 OK 803ms
/iceberg/iceberg table engine/feature/row policies/combination #134 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #135 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #136 OK 830ms
/iceberg/iceberg table engine/feature/row policies/combination #137 OK 932ms
/iceberg/iceberg table engine/feature/row policies/combination #138 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #139 OK 714ms
/iceberg/iceberg table engine/feature/row policies/combination #140 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #141 OK 804ms
/iceberg/iceberg table engine/feature/row policies/combination #142 OK 730ms
/iceberg/iceberg table engine/feature/row policies/combination #143 OK 724ms
/iceberg/iceberg table engine/feature/row policies/combination #144 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #145 OK 732ms
/iceberg/iceberg table engine/feature/row policies/combination #146 OK 702ms
/iceberg/iceberg table engine/feature/row policies/combination #147 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #148 OK 769ms
/iceberg/iceberg table engine/feature/row policies/combination #149 OK 788ms
/iceberg/iceberg table engine/feature/row policies/combination #150 OK 690ms
/iceberg/iceberg table engine/feature/row policies/combination #151 OK 804ms
/iceberg/iceberg table engine/feature/row policies/combination #152 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #153 OK 819ms
/iceberg/iceberg table engine/feature/row policies/combination #154 OK 810ms
/iceberg/iceberg table engine/feature/row policies/combination #155 OK 836ms
/iceberg/iceberg table engine/feature/row policies/combination #156 OK 830ms
/iceberg/iceberg table engine/feature/row policies/combination #157 OK 843ms
/iceberg/iceberg table engine/feature/row policies/combination #158 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #159 OK 759ms
/iceberg/iceberg table engine/feature/row policies/combination #160 OK 760ms
/iceberg/iceberg table engine/feature/row policies/combination #161 OK 700ms
/iceberg/iceberg table engine/feature/row policies/combination #162 OK 819ms
/iceberg/iceberg table engine/feature/row policies/combination #163 OK 791ms
/iceberg/iceberg table engine/feature/row policies/combination #164 OK 750ms
/iceberg/iceberg table engine/feature/row policies/combination #165 OK 833ms
/iceberg/iceberg table engine/feature/row policies/combination #166 OK 737ms
/iceberg/iceberg table engine/feature/row policies/combination #167 OK 677ms
/iceberg/iceberg table engine/feature/row policies/combination #168 OK 800ms
/iceberg/iceberg table engine/feature/row policies/combination #169 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #170 OK 853ms
/iceberg/iceberg table engine/feature/row policies/combination #171 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #172 OK 774ms
/iceberg/iceberg table engine/feature/row policies/combination #173 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #174 OK 803ms
/iceberg/iceberg table engine/feature/row policies/combination #175 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #176 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #177 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #178 OK 661ms
/iceberg/iceberg table engine/feature/row policies/combination #179 OK 691ms
/iceberg/iceberg table engine/feature/row policies/combination #180 OK 767ms
/iceberg/iceberg table engine/feature/row policies/combination #181 OK 729ms
/iceberg/iceberg table engine/feature/row policies/combination #182 OK 804ms
/iceberg/iceberg table engine/feature/row policies/combination #183 OK 809ms
/iceberg/iceberg table engine/feature/row policies/combination #184 OK 744ms
/iceberg/iceberg table engine/feature/row policies/combination #185 OK 732ms
/iceberg/iceberg table engine/feature/row policies/combination #186 OK 687ms
/iceberg/iceberg table engine/feature/row policies/combination #187 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #188 OK 732ms
/iceberg/iceberg table engine/feature/row policies/combination #189 OK 740ms
/iceberg/iceberg table engine/feature/row policies/combination #190 OK 749ms
/iceberg/iceberg table engine/feature/row policies/combination #191 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #192 OK 730ms
/iceberg/iceberg table engine/feature/row policies/combination #193 OK 768ms
/iceberg/iceberg table engine/feature/row policies/combination #194 OK 850ms
/iceberg/iceberg table engine/feature/row policies/combination #195 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #196 OK 721ms
/iceberg/iceberg table engine/feature/row policies/combination #197 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #198 OK 812ms
/iceberg/iceberg table engine/feature/row policies/combination #199 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #200 OK 715ms
/iceberg/iceberg table engine/feature/row policies/combination #201 OK 715ms
/iceberg/iceberg table engine/feature/row policies/combination #202 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #203 OK 819ms
/iceberg/iceberg table engine/feature/row policies/combination #204 OK 801ms
/iceberg/iceberg table engine/feature/row policies/combination #205 OK 793ms
/iceberg/iceberg table engine/feature/row policies/combination #206 OK 731ms
/iceberg/iceberg table engine/feature/row policies/combination #207 OK 716ms
/iceberg/iceberg table engine/feature/row policies/combination #208 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #209 OK 776ms
/iceberg/iceberg table engine/feature/row policies/combination #210 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #211 OK 752ms
/iceberg/iceberg table engine/feature/row policies/combination #212 OK 768ms
/iceberg/iceberg table engine/feature/row policies/combination #213 OK 658ms
/iceberg/iceberg table engine/feature/row policies/combination #214 OK 774ms
/iceberg/iceberg table engine/feature/row policies/combination #215 OK 782ms
/iceberg/iceberg table engine/feature/row policies/combination #216 OK 816ms
/iceberg/iceberg table engine/feature/row policies/combination #217 OK 770ms
/iceberg/iceberg table engine/feature/row policies/combination #218 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #219 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #220 OK 773ms
/iceberg/iceberg table engine/feature/row policies/combination #221 OK 674ms
/iceberg/iceberg table engine/feature/row policies/combination #222 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #223 OK 818ms
/iceberg/iceberg table engine/feature/row policies/combination #224 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #225 OK 670ms
/iceberg/iceberg table engine/feature/row policies/combination #226 OK 704ms
/iceberg/iceberg table engine/feature/row policies/combination #227 OK 671ms
/iceberg/iceberg table engine/feature/row policies/combination #228 OK 791ms
/iceberg/iceberg table engine/feature/row policies/combination #229 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #230 OK 819ms
/iceberg/iceberg table engine/feature/row policies/combination #231 OK 811ms
/iceberg/iceberg table engine/feature/row policies/combination #232 OK 658ms
/iceberg/iceberg table engine/feature/row policies/combination #233 OK 837ms
/iceberg/iceberg table engine/feature/row policies/combination #234 OK 772ms
/iceberg/iceberg table engine/feature/row policies/combination #235 OK 878ms
/iceberg/iceberg table engine/feature/row policies/combination #236 OK 912ms
/iceberg/iceberg table engine/feature/row policies/combination #237 OK 850ms
/iceberg/iceberg table engine/feature/row policies/combination #238 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #239 OK 746ms
/iceberg/iceberg table engine/feature/row policies/combination #240 OK 778ms
/iceberg/iceberg table engine/feature/row policies/combination #241 OK 696ms
/iceberg/iceberg table engine/feature/row policies/combination #242 OK 756ms
/iceberg/iceberg table engine/feature/row policies/combination #243 OK 675ms
/iceberg/iceberg table engine/feature/row policies/combination #244 OK 833ms
/iceberg/iceberg table engine/feature/row policies/combination #245 OK 694ms
/iceberg/iceberg table engine/feature/row policies/combination #246 OK 823ms
/iceberg/iceberg table engine/feature/row policies/combination #247 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #248 OK 767ms
/iceberg/iceberg table engine/feature/row policies/combination #249 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #250 OK 804ms
/iceberg/iceberg table engine/feature/row policies/combination #251 OK 851ms
/iceberg/iceberg table engine/feature/row policies/combination #252 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #253 OK 848ms
/iceberg/iceberg table engine/feature/row policies/combination #254 OK 812ms
/iceberg/iceberg table engine/feature/row policies/combination #255 OK 842ms
/iceberg/iceberg table engine/feature/row policies/combination #256 OK 834ms
/iceberg/iceberg table engine/feature/row policies/combination #257 OK 789ms
/iceberg/iceberg table engine/feature/row policies/combination #258 OK 753ms
/iceberg/iceberg table engine/feature/row policies/combination #259 OK 820ms
/iceberg/iceberg table engine/feature/row policies/combination #260 OK 678ms
/iceberg/iceberg table engine/feature/row policies/combination #261 OK 829ms
/iceberg/iceberg table engine/feature/row policies/combination #262 OK 830ms
/iceberg/iceberg table engine/feature/row policies/combination #263 OK 841ms
/iceberg/iceberg table engine/feature/row policies/combination #264 OK 841ms
/iceberg/iceberg table engine/feature/row policies/combination #265 OK 748ms
/iceberg/iceberg table engine/feature/row policies/combination #266 OK 755ms
/iceberg/iceberg table engine/feature/row policies/combination #267 OK 678ms
/iceberg/iceberg table engine/feature/row policies/combination #268 OK 836ms
/iceberg/iceberg table engine/feature/row policies/combination #269 OK 670ms
/iceberg/iceberg table engine/feature/row policies/combination #270 OK 752ms
/iceberg/iceberg table engine/feature/row policies/combination #271 OK 748ms
/iceberg/iceberg table engine/feature/row policies/combination #272 OK 750ms
/iceberg/iceberg table engine/feature/row policies/combination #273 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #274 OK 844ms
/iceberg/iceberg table engine/feature/row policies/combination #275 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #276 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #277 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #278 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #279 OK 741ms
/iceberg/iceberg table engine/feature/row policies/combination #280 OK 771ms
/iceberg/iceberg table engine/feature/row policies/combination #281 OK 768ms
/iceberg/iceberg table engine/feature/row policies/combination #282 OK 709ms
/iceberg/iceberg table engine/feature/row policies/combination #283 OK 696ms
/iceberg/iceberg table engine/feature/row policies/combination #284 OK 672ms
/iceberg/iceberg table engine/feature/row policies/combination #285 OK 787ms
/iceberg/iceberg table engine/feature/row policies/combination #286 OK 809ms
/iceberg/iceberg table engine/feature/row policies/combination #287 OK 794ms
/iceberg/iceberg table engine/feature/row policies/combination #288 OK 765ms
/iceberg/iceberg table engine/feature/row policies/combination #289 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #290 OK 814ms
/iceberg/iceberg table engine/feature/row policies/combination #291 OK 809ms
/iceberg/iceberg table engine/feature/row policies/combination #292 OK 680ms
/iceberg/iceberg table engine/feature/row policies/combination #293 OK 663ms
/iceberg/iceberg table engine/feature/row policies/combination #294 OK 669ms
/iceberg/iceberg table engine/feature/row policies/combination #295 OK 798ms
/iceberg/iceberg table engine/feature/row policies/combination #296 OK 669ms
/iceberg/iceberg table engine/feature/row policies/combination #297 OK 827ms
/iceberg/iceberg table engine/feature/row policies/combination #298 OK 705ms
/iceberg/iceberg table engine/feature/row policies/combination #299 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #300 OK 819ms
/iceberg/iceberg table engine/feature/row policies/combination #301 OK 839ms
/iceberg/iceberg table engine/feature/row policies/combination #302 OK 750ms
/iceberg/iceberg table engine/feature/row policies/combination #303 OK 762ms
/iceberg/iceberg table engine/feature/row policies/combination #304 OK 879ms
/iceberg/iceberg table engine/feature/row policies/combination #305 OK 769ms
/iceberg/iceberg table engine/feature/row policies/combination #306 OK 675ms
/iceberg/iceberg table engine/feature/row policies/combination #307 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #308 OK 831ms
/iceberg/iceberg table engine/feature/row policies/combination #309 OK 743ms
/iceberg/iceberg table engine/feature/row policies/combination #310 OK 690ms
/iceberg/iceberg table engine/feature/row policies/combination #311 OK 841ms
/iceberg/iceberg table engine/feature/row policies/combination #312 OK 884ms
/iceberg/iceberg table engine/feature/row policies/combination #313 OK 884ms
/iceberg/iceberg table engine/feature/row policies/combination #314 OK 877ms
/iceberg/iceberg table engine/feature/row policies/combination #315 OK 811ms
/iceberg/iceberg table engine/feature/row policies/combination #316 OK 697ms
/iceberg/iceberg table engine/feature/row policies/combination #317 OK 700ms
/iceberg/iceberg table engine/feature/row policies/combination #318 OK 849ms
/iceberg/iceberg table engine/feature/row policies/combination #319 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #320 OK 810ms
/iceberg/iceberg table engine/feature/row policies/combination #321 OK 718ms
/iceberg/iceberg table engine/feature/row policies/combination #322 OK 771ms
/iceberg/iceberg table engine/feature/row policies/combination #323 OK 772ms
/iceberg/iceberg table engine/feature/row policies/combination #324 OK 713ms
/iceberg/iceberg table engine/feature/row policies/combination #325 OK 717ms
/iceberg/iceberg table engine/feature/row policies/combination #326 OK 864ms
/iceberg/iceberg table engine/feature/row policies/combination #327 OK 689ms
/iceberg/iceberg table engine/feature/row policies/combination #328 OK 814ms
/iceberg/iceberg table engine/feature/row policies/combination #329 OK 753ms
/iceberg/iceberg table engine/feature/row policies/combination #330 OK 669ms
/iceberg/iceberg table engine/feature/row policies/combination #331 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #332 OK 826ms
/iceberg/iceberg table engine/feature/row policies/combination #333 OK 804ms
/iceberg/iceberg table engine/feature/row policies/combination #334 OK 764ms
/iceberg/iceberg table engine/feature/row policies/combination #335 OK 793ms
/iceberg/iceberg table engine/feature/row policies/combination #336 OK 684ms
/iceberg/iceberg table engine/feature/row policies/combination #337 OK 823ms
/iceberg/iceberg table engine/feature/row policies/combination #338 OK 755ms
/iceberg/iceberg table engine/feature/row policies/combination #339 OK 866ms
/iceberg/iceberg table engine/feature/row policies/combination #340 OK 676ms
/iceberg/iceberg table engine/feature/row policies/combination #341 OK 702ms
/iceberg/iceberg table engine/feature/row policies/combination #342 OK 837ms
/iceberg/iceberg table engine/feature/row policies/combination #343 OK 704ms
/iceberg/iceberg table engine/feature/row policies/combination #344 OK 678ms
/iceberg/iceberg table engine/feature/row policies/combination #345 OK 711ms
/iceberg/iceberg table engine/feature/row policies/combination #346 OK 673ms
/iceberg/iceberg table engine/feature/row policies/combination #347 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #348 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #349 OK 825ms
/iceberg/iceberg table engine/feature/row policies/combination #350 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #351 OK 684ms
/iceberg/iceberg table engine/feature/row policies/combination #352 OK 717ms
/iceberg/iceberg table engine/feature/row policies/combination #353 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #354 OK 838ms
/iceberg/iceberg table engine/feature/row policies/combination #355 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #356 OK 746ms
/iceberg/iceberg table engine/feature/row policies/combination #357 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #358 OK 734ms
/iceberg/iceberg table engine/feature/row policies/combination #359 OK 798ms
/iceberg/iceberg table engine/feature/row policies/combination #360 OK 762ms
/iceberg/iceberg table engine/feature/row policies/combination #361 OK 765ms
/iceberg/iceberg table engine/feature/row policies/combination #362 OK 659ms
/iceberg/iceberg table engine/feature/row policies/combination #363 OK 765ms
/iceberg/iceberg table engine/feature/row policies/combination #364 OK 720ms
/iceberg/iceberg table engine/feature/row policies/combination #365 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #366 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #367 OK 740ms
/iceberg/iceberg table engine/feature/row policies/combination #368 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #369 OK 786ms
/iceberg/iceberg table engine/feature/row policies/combination #370 OK 812ms
/iceberg/iceberg table engine/feature/row policies/combination #371 OK 763ms
/iceberg/iceberg table engine/feature/row policies/combination #372 OK 805ms
/iceberg/iceberg table engine/feature/row policies/combination #373 OK 647ms
/iceberg/iceberg table engine/feature/row policies/combination #374 OK 647ms
/iceberg/iceberg table engine/feature/row policies/combination #375 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #376 OK 744ms
/iceberg/iceberg table engine/feature/row policies/combination #377 OK 655ms
/iceberg/iceberg table engine/feature/row policies/combination #378 OK 643ms
/iceberg/iceberg table engine/feature/row policies/combination #379 OK 781ms
/iceberg/iceberg table engine/feature/row policies/combination #380 OK 784ms
/iceberg/iceberg table engine/feature/row policies/combination #381 OK 793ms
/iceberg/iceberg table engine/feature/row policies/combination #382 OK 817ms
/iceberg/iceberg table engine/feature/row policies/combination #383 OK 761ms
/iceberg/iceberg table engine/feature/row policies/combination #384 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #385 OK 766ms
/iceberg/iceberg table engine/feature/row policies/combination #386 OK 731ms
/iceberg/iceberg table engine/feature/row policies/combination #387 OK 786ms
/iceberg/iceberg table engine/feature/row policies/combination #388 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #389 OK 869ms
/iceberg/iceberg table engine/feature/row policies/combination #390 OK 732ms
/iceberg/iceberg table engine/feature/row policies/combination #391 OK 684ms
/iceberg/iceberg table engine/feature/row policies/combination #392 OK 858ms
/iceberg/iceberg table engine/feature/row policies/combination #393 OK 689ms
/iceberg/iceberg table engine/feature/row policies/combination #394 OK 822ms
/iceberg/iceberg table engine/feature/row policies/combination #395 OK 725ms
/iceberg/iceberg table engine/feature/row policies/combination #396 OK 756ms
/iceberg/iceberg table engine/feature/row policies/combination #397 OK 755ms
/iceberg/iceberg table engine/feature/row policies/combination #398 OK 657ms
/iceberg/iceberg table engine/feature/row policies/combination #399 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #400 OK 732ms
/iceberg/iceberg table engine/feature/row policies/combination #401 OK 784ms
/iceberg/iceberg table engine/feature/row policies/combination #402 OK 851ms
/iceberg/iceberg table engine/feature/row policies/combination #403 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #404 OK 786ms
/iceberg/iceberg table engine/feature/row policies/combination #405 OK 721ms
/iceberg/iceberg table engine/feature/row policies/combination #406 OK 728ms
/iceberg/iceberg table engine/feature/row policies/combination #407 OK 761ms
/iceberg/iceberg table engine/feature/row policies/combination #408 OK 832ms
/iceberg/iceberg table engine/feature/row policies/combination #409 OK 834ms
/iceberg/iceberg table engine/feature/row policies/combination #410 OK 863ms
/iceberg/iceberg table engine/feature/row policies/combination #411 OK 739ms
/iceberg/iceberg table engine/feature/row policies/combination #412 OK 743ms
/iceberg/iceberg table engine/feature/row policies/combination #413 OK 687ms
/iceberg/iceberg table engine/feature/row policies/combination #414 OK 822ms
/iceberg/iceberg table engine/feature/row policies/combination #415 OK 759ms
/iceberg/iceberg table engine/feature/row policies/combination #416 OK 752ms
/iceberg/iceberg table engine/feature/row policies/combination #417 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #418 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #419 OK 753ms
/iceberg/iceberg table engine/feature/row policies/combination #420 OK 734ms
/iceberg/iceberg table engine/feature/row policies/combination #421 OK 674ms
/iceberg/iceberg table engine/feature/row policies/combination #422 OK 665ms
/iceberg/iceberg table engine/feature/row policies/combination #423 OK 764ms
/iceberg/iceberg table engine/feature/row policies/combination #424 OK 875ms
/iceberg/iceberg table engine/feature/row policies/combination #425 OK 800ms
/iceberg/iceberg table engine/feature/row policies/combination #426 OK 780ms
/iceberg/iceberg table engine/feature/row policies/combination #427 OK 782ms
/iceberg/iceberg table engine/feature/row policies/combination #428 OK 674ms
/iceberg/iceberg table engine/feature/row policies/combination #429 OK 851ms
/iceberg/iceberg table engine/feature/row policies/combination #430 OK 830ms
/iceberg/iceberg table engine/feature/row policies/combination #431 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #432 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #433 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #434 OK 671ms
/iceberg/iceberg table engine/feature/row policies/combination #435 OK 699ms
/iceberg/iceberg table engine/feature/row policies/combination #436 OK 791ms
/iceberg/iceberg table engine/feature/row policies/combination #437 OK 737ms
/iceberg/iceberg table engine/feature/row policies/combination #438 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #439 OK 823ms
/iceberg/iceberg table engine/feature/row policies/combination #440 OK 801ms
/iceberg/iceberg table engine/feature/row policies/combination #441 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #442 OK 778ms
/iceberg/iceberg table engine/feature/row policies/combination #443 OK 690ms
/iceberg/iceberg table engine/feature/row policies/combination #444 OK 778ms
/iceberg/iceberg table engine/feature/row policies/combination #445 OK 669ms
/iceberg/iceberg table engine/feature/row policies/combination #446 OK 817ms
/iceberg/iceberg table engine/feature/row policies/combination #447 OK 776ms
/iceberg/iceberg table engine/feature/row policies/combination #448 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #449 OK 792ms
/iceberg/iceberg table engine/feature/row policies/combination #450 OK 843ms
/iceberg/iceberg table engine/feature/row policies/combination #451 OK 812ms
/iceberg/iceberg table engine/feature/row policies/combination #452 OK 701ms
/iceberg/iceberg table engine/feature/row policies/combination #453 OK 696ms
/iceberg/iceberg table engine/feature/row policies/combination #454 OK 685ms
/iceberg/iceberg table engine/feature/row policies/combination #455 OK 789ms
/iceberg/iceberg table engine/feature/row policies/combination #456 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #457 OK 641ms
/iceberg/iceberg table engine/feature/row policies/combination #458 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #459 OK 777ms
/iceberg/iceberg table engine/feature/row policies/combination #460 OK 798ms
/iceberg/iceberg table engine/feature/row policies/combination #461 OK 784ms
/iceberg/iceberg table engine/feature/row policies/combination #462 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #463 OK 645ms
/iceberg/iceberg table engine/feature/row policies/combination #464 OK 672ms
/iceberg/iceberg table engine/feature/row policies/combination #465 OK 661ms
/iceberg/iceberg table engine/feature/row policies/combination #466 OK 729ms
/iceberg/iceberg table engine/feature/row policies/combination #467 OK 749ms
/iceberg/iceberg table engine/feature/row policies/combination #468 OK 740ms
/iceberg/iceberg table engine/feature/row policies/combination #469 OK 725ms
/iceberg/iceberg table engine/feature/row policies/combination #470 OK 764ms
/iceberg/iceberg table engine/feature/row policies/combination #471 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #472 OK 761ms
/iceberg/iceberg table engine/feature/row policies/combination #473 OK 855ms
/iceberg/iceberg table engine/feature/row policies/combination #474 OK 677ms
/iceberg/iceberg table engine/feature/row policies/combination #475 OK 787ms
/iceberg/iceberg table engine/feature/row policies/combination #476 OK 663ms
/iceberg/iceberg table engine/feature/row policies/combination #477 OK 656ms
/iceberg/iceberg table engine/feature/row policies/combination #478 OK 815ms
/iceberg/iceberg table engine/feature/row policies/combination #479 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #480 OK 711ms
/iceberg/iceberg table engine/feature/row policies/combination #481 OK 652ms
/iceberg/iceberg table engine/feature/row policies/combination #482 OK 653ms
/iceberg/iceberg table engine/feature/row policies/combination #483 OK 755ms
/iceberg/iceberg table engine/feature/row policies/combination #484 OK 836ms
/iceberg/iceberg table engine/feature/row policies/combination #485 OK 654ms
/iceberg/iceberg table engine/feature/row policies/combination #486 OK 784ms
/iceberg/iceberg table engine/feature/row policies/combination #487 OK 800ms
/iceberg/iceberg table engine/feature/row policies/combination #488 OK 818ms
/iceberg/iceberg table engine/feature/row policies/combination #489 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #490 OK 680ms
/iceberg/iceberg table engine/feature/row policies/combination #491 OK 792ms
/iceberg/iceberg table engine/feature/row policies/combination #492 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #493 OK 763ms
/iceberg/iceberg table engine/feature/row policies/combination #494 OK 746ms
/iceberg/iceberg table engine/feature/row policies/combination #495 OK 673ms
/iceberg/iceberg table engine/feature/row policies/combination #496 OK 821ms
/iceberg/iceberg table engine/feature/row policies/combination #497 OK 786ms
/iceberg/iceberg table engine/feature/row policies/combination #498 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #499 OK 676ms
/iceberg/iceberg table engine/feature/row policies/combination #500 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #501 OK 818ms
/iceberg/iceberg table engine/feature/row policies/combination #502 OK 679ms
/iceberg/iceberg table engine/feature/row policies/combination #503 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #504 OK 847ms
/iceberg/iceberg table engine/feature/row policies/combination #505 OK 814ms
/iceberg/iceberg table engine/feature/row policies/combination #506 OK 805ms
/iceberg/iceberg table engine/feature/row policies/combination #507 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #508 OK 661ms
/iceberg/iceberg table engine/feature/row policies/combination #509 OK 731ms
/iceberg/iceberg table engine/feature/row policies/combination #510 OK 811ms
/iceberg/iceberg table engine/feature/row policies/combination #511 OK 798ms
/iceberg/iceberg table engine/feature/row policies/combination #512 OK 658ms
/iceberg/iceberg table engine/feature/row policies/combination #513 OK 740ms
/iceberg/iceberg table engine/feature/row policies/combination #514 OK 824ms
/iceberg/iceberg table engine/feature/row policies/combination #515 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #516 OK 758ms
/iceberg/iceberg table engine/feature/row policies/combination #517 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #518 OK 781ms
/iceberg/iceberg table engine/feature/row policies/combination #519 OK 782ms
/iceberg/iceberg table engine/feature/row policies/combination #520 OK 829ms
/iceberg/iceberg table engine/feature/row policies/combination #521 OK 652ms
/iceberg/iceberg table engine/feature/row policies/combination #522 OK 814ms
/iceberg/iceberg table engine/feature/row policies/combination #523 OK 774ms
/iceberg/iceberg table engine/feature/row policies/combination #524 OK 748ms
/iceberg/iceberg table engine/feature/row policies/combination #525 OK 648ms
/iceberg/iceberg table engine/feature/row policies/combination #526 OK 742ms
/iceberg/iceberg table engine/feature/row policies/combination #527 OK 760ms
/iceberg/iceberg table engine/feature/row policies/combination #528 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #529 OK 784ms
/iceberg/iceberg table engine/feature/row policies/combination #530 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #531 OK 788ms
/iceberg/iceberg table engine/feature/row policies/combination #532 OK 752ms
/iceberg/iceberg table engine/feature/row policies/combination #533 OK 751ms
/iceberg/iceberg table engine/feature/row policies/combination #534 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #535 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #536 OK 783ms
/iceberg/iceberg table engine/feature/row policies/combination #537 OK 789ms
/iceberg/iceberg table engine/feature/row policies/combination #538 OK 791ms
/iceberg/iceberg table engine/feature/row policies/combination #539 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #540 OK 720ms
/iceberg/iceberg table engine/feature/row policies/combination #541 OK 843ms
/iceberg/iceberg table engine/feature/row policies/combination #542 OK 825ms
/iceberg/iceberg table engine/feature/row policies/combination #543 OK 759ms
/iceberg/iceberg table engine/feature/row policies/combination #544 OK 666ms
/iceberg/iceberg table engine/feature/row policies/combination #545 OK 669ms
/iceberg/iceberg table engine/feature/row policies/combination #546 OK 809ms
/iceberg/iceberg table engine/feature/row policies/combination #547 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #548 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #549 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #550 OK 835ms
/iceberg/iceberg table engine/feature/row policies/combination #551 OK 734ms
/iceberg/iceberg table engine/feature/row policies/combination #552 OK 705ms
/iceberg/iceberg table engine/feature/row policies/combination #553 OK 741ms
/iceberg/iceberg table engine/feature/row policies/combination #554 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #555 OK 677ms
/iceberg/iceberg table engine/feature/row policies/combination #556 OK 670ms
/iceberg/iceberg table engine/feature/row policies/combination #557 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #558 OK 805ms
/iceberg/iceberg table engine/feature/row policies/combination #559 OK 737ms
/iceberg/iceberg table engine/feature/row policies/combination #560 OK 834ms
/iceberg/iceberg table engine/feature/row policies/combination #561 OK 845ms
/iceberg/iceberg table engine/feature/row policies/combination #562 OK 779ms
/iceberg/iceberg table engine/feature/row policies/combination #563 OK 718ms
/iceberg/iceberg table engine/feature/row policies/combination #564 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #565 OK 862ms
/iceberg/iceberg table engine/feature/row policies/combination #566 OK 854ms
/iceberg/iceberg table engine/feature/row policies/combination #567 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #568 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #569 OK 758ms
/iceberg/iceberg table engine/feature/row policies/combination #570 OK 659ms
/iceberg/iceberg table engine/feature/row policies/combination #571 OK 687ms
/iceberg/iceberg table engine/feature/row policies/combination #572 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #573 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #574 OK 753ms
/iceberg/iceberg table engine/feature/row policies/combination #575 OK 815ms
/iceberg/iceberg table engine/feature/row policies/combination #576 OK 753ms
/iceberg/iceberg table engine/feature/row policies/combination #577 OK 741ms
/iceberg/iceberg table engine/feature/row policies/combination #578 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #579 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #580 OK 666ms
/iceberg/iceberg table engine/feature/row policies/combination #581 OK 679ms
/iceberg/iceberg table engine/feature/row policies/combination #582 OK 847ms
/iceberg/iceberg table engine/feature/row policies/combination #583 OK 709ms
/iceberg/iceberg table engine/feature/row policies/combination #584 OK 787ms
/iceberg/iceberg table engine/feature/row policies/combination #585 OK 856ms
/iceberg/iceberg table engine/feature/row policies/combination #586 OK 695ms
/iceberg/iceberg table engine/feature/row policies/combination #587 OK 882ms
/iceberg/iceberg table engine/feature/row policies/combination #588 OK 851ms
/iceberg/iceberg table engine/feature/row policies/combination #589 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #590 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #591 OK 650ms
/iceberg/iceberg table engine/feature/row policies/combination #592 OK 704ms
/iceberg/iceberg table engine/feature/row policies/combination #593 OK 731ms
/iceberg/iceberg table engine/feature/row policies/combination #594 OK 728ms
/iceberg/iceberg table engine/feature/row policies/combination #595 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #596 OK 803ms
/iceberg/iceberg table engine/feature/row policies/combination #597 OK 718ms
/iceberg/iceberg table engine/feature/row policies/combination #598 OK 713ms
/iceberg/iceberg table engine/feature/row policies/combination #599 OK 718ms
/iceberg/iceberg table engine/feature/row policies/combination #600 OK 744ms
/iceberg/iceberg table engine/feature/row policies/combination #601 OK 839ms
/iceberg/iceberg table engine/feature/row policies/combination #602 OK 848ms
/iceberg/iceberg table engine/feature/row policies/combination #603 OK 758ms
/iceberg/iceberg table engine/feature/row policies/combination #604 OK 712ms
/iceberg/iceberg table engine/feature/row policies/combination #605 OK 756ms
/iceberg/iceberg table engine/feature/row policies/combination #606 OK 702ms
/iceberg/iceberg table engine/feature/row policies/combination #607 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #608 OK 734ms
/iceberg/iceberg table engine/feature/row policies/combination #609 OK 781ms
/iceberg/iceberg table engine/feature/row policies/combination #610 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #611 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #612 OK 748ms
/iceberg/iceberg table engine/feature/row policies/combination #613 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #614 OK 724ms
/iceberg/iceberg table engine/feature/row policies/combination #615 OK 684ms
/iceberg/iceberg table engine/feature/row policies/combination #616 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #617 OK 669ms
/iceberg/iceberg table engine/feature/row policies/combination #618 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #619 OK 682ms
/iceberg/iceberg table engine/feature/row policies/combination #620 OK 779ms
/iceberg/iceberg table engine/feature/row policies/combination #621 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #622 OK 735ms
/iceberg/iceberg table engine/feature/row policies/combination #623 OK 677ms
/iceberg/iceberg table engine/feature/row policies/combination #624 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #625 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #626 OK 656ms
/iceberg/iceberg table engine/feature/row policies/combination #627 OK 719ms
/iceberg/iceberg table engine/feature/row policies/combination #628 OK 663ms
/iceberg/iceberg table engine/feature/row policies/combination #629 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #630 OK 842ms
/iceberg/iceberg table engine/feature/row policies/combination #631 OK 677ms
/iceberg/iceberg table engine/feature/row policies/combination #632 OK 844ms
/iceberg/iceberg table engine/feature/row policies/combination #633 OK 868ms
/iceberg/iceberg table engine/feature/row policies/combination #634 OK 819ms
/iceberg/iceberg table engine/feature/row policies/combination #635 OK 812ms
/iceberg/iceberg table engine/feature/row policies/combination #636 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #637 OK 827ms
/iceberg/iceberg table engine/feature/row policies/combination #638 OK 811ms
/iceberg/iceberg table engine/feature/row policies/combination #639 OK 743ms
/iceberg/iceberg table engine/feature/row policies/combination #640 OK 749ms
/iceberg/iceberg table engine/feature/row policies/combination #641 OK 666ms
/iceberg/iceberg table engine/feature/row policies/combination #642 OK 730ms
/iceberg/iceberg table engine/feature/row policies/combination #643 OK 734ms
/iceberg/iceberg table engine/feature/row policies/combination #644 OK 676ms
/iceberg/iceberg table engine/feature/row policies/combination #645 OK 780ms
/iceberg/iceberg table engine/feature/row policies/combination #646 OK 706ms
/iceberg/iceberg table engine/feature/row policies/combination #647 OK 772ms
/iceberg/iceberg table engine/feature/row policies/combination #648 OK 674ms
/iceberg/iceberg table engine/feature/row policies/combination #649 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #650 OK 924ms
/iceberg/iceberg table engine/feature/row policies/combination #651 OK 756ms
/iceberg/iceberg table engine/feature/row policies/combination #652 OK 814ms
/iceberg/iceberg table engine/feature/row policies/combination #653 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #654 OK 686ms
/iceberg/iceberg table engine/feature/row policies/combination #655 OK 793ms
/iceberg/iceberg table engine/feature/row policies/combination #656 OK 732ms
/iceberg/iceberg table engine/feature/row policies/combination #657 OK 803ms
/iceberg/iceberg table engine/feature/row policies/combination #658 OK 686ms
/iceberg/iceberg table engine/feature/row policies/combination #659 OK 739ms
/iceberg/iceberg table engine/feature/row policies/combination #660 OK 710ms
/iceberg/iceberg table engine/feature/row policies/combination #661 OK 868ms
/iceberg/iceberg table engine/feature/row policies/combination #662 OK 752ms
/iceberg/iceberg table engine/feature/row policies/combination #663 OK 835ms
/iceberg/iceberg table engine/feature/row policies/combination #664 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #665 OK 839ms
/iceberg/iceberg table engine/feature/row policies/combination #666 OK 749ms
/iceberg/iceberg table engine/feature/row policies/combination #667 OK 818ms
/iceberg/iceberg table engine/feature/row policies/combination #668 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #669 OK 728ms
/iceberg/iceberg table engine/feature/row policies/combination #670 OK 659ms
/iceberg/iceberg table engine/feature/row policies/combination #671 OK 677ms
/iceberg/iceberg table engine/feature/row policies/combination #672 OK 849ms
/iceberg/iceberg table engine/feature/row policies/combination #673 OK 673ms
/iceberg/iceberg table engine/feature/row policies/combination #674 OK 745ms
/iceberg/iceberg table engine/feature/row policies/combination #675 OK 833ms
/iceberg/iceberg table engine/feature/row policies/combination #676 OK 750ms
/iceberg/iceberg table engine/feature/row policies/combination #677 OK 669ms
/iceberg/iceberg table engine/feature/row policies/combination #678 OK 816ms
/iceberg/iceberg table engine/feature/row policies/combination #679 OK 793ms
/iceberg/iceberg table engine/feature/row policies/combination #680 OK 647ms
/iceberg/iceberg table engine/feature/row policies/combination #681 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #682 OK 798ms
/iceberg/iceberg table engine/feature/row policies/combination #683 OK 826ms
/iceberg/iceberg table engine/feature/row policies/combination #684 OK 803ms
/iceberg/iceberg table engine/feature/row policies/combination #685 OK 821ms
/iceberg/iceberg table engine/feature/row policies/combination #686 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #687 OK 833ms
/iceberg/iceberg table engine/feature/row policies/combination #688 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #689 OK 834ms
/iceberg/iceberg table engine/feature/row policies/combination #690 OK 836ms
/iceberg/iceberg table engine/feature/row policies/combination #691 OK 742ms
/iceberg/iceberg table engine/feature/row policies/combination #692 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #693 OK 695ms
/iceberg/iceberg table engine/feature/row policies/combination #694 OK 657ms
/iceberg/iceberg table engine/feature/row policies/combination #695 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #696 OK 755ms
/iceberg/iceberg table engine/feature/row policies/combination #697 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #698 OK 671ms
/iceberg/iceberg table engine/feature/row policies/combination #699 OK 745ms
/iceberg/iceberg table engine/feature/row policies/combination #700 OK 665ms
/iceberg/iceberg table engine/feature/row policies/combination #701 OK 827ms
/iceberg/iceberg table engine/feature/row policies/combination #702 OK 648ms
/iceberg/iceberg table engine/feature/row policies/combination #703 OK 728ms
/iceberg/iceberg table engine/feature/row policies/combination #704 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #705 OK 745ms
/iceberg/iceberg table engine/feature/row policies/combination #706 OK 820ms
/iceberg/iceberg table engine/feature/row policies/combination #707 OK 755ms
/iceberg/iceberg table engine/feature/row policies/combination #708 OK 683ms
/iceberg/iceberg table engine/feature/row policies/combination #709 OK 890ms
/iceberg/iceberg table engine/feature/row policies/combination #710 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #711 OK 724ms
/iceberg/iceberg table engine/feature/row policies/combination #712 OK 850ms
/iceberg/iceberg table engine/feature/row policies/combination #713 OK 789ms
/iceberg/iceberg table engine/feature/row policies/combination #714 OK 685ms
/iceberg/iceberg table engine/feature/row policies/combination #715 OK 695ms
/iceberg/iceberg table engine/feature/row policies/combination #716 OK 839ms
/iceberg/iceberg table engine/feature/row policies/combination #717 OK 771ms
/iceberg/iceberg table engine/feature/row policies/combination #718 OK 703ms
/iceberg/iceberg table engine/feature/row policies/combination #719 OK 812ms
/iceberg/iceberg table engine/feature/row policies/combination #720 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #721 OK 849ms
/iceberg/iceberg table engine/feature/row policies/combination #722 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #723 OK 778ms
/iceberg/iceberg table engine/feature/row policies/combination #724 OK 679ms
/iceberg/iceberg table engine/feature/row policies/combination #725 OK 810ms
/iceberg/iceberg table engine/feature/row policies/combination #726 OK 798ms
/iceberg/iceberg table engine/feature/row policies/combination #727 OK 746ms
/iceberg/iceberg table engine/feature/row policies/combination #728 OK 856ms
/iceberg/iceberg table engine/feature/row policies/combination #729 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #730 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #731 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #732 OK 812ms
/iceberg/iceberg table engine/feature/row policies/combination #733 OK 825ms
/iceberg/iceberg table engine/feature/row policies/combination #734 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #735 OK 738ms
/iceberg/iceberg table engine/feature/row policies/combination #736 OK 804ms
/iceberg/iceberg table engine/feature/row policies/combination #737 OK 766ms
/iceberg/iceberg table engine/feature/row policies/combination #738 OK 804ms
/iceberg/iceberg table engine/feature/row policies/combination #739 OK 818ms
/iceberg/iceberg table engine/feature/row policies/combination #740 OK 830ms
/iceberg/iceberg table engine/feature/row policies/combination #741 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #742 OK 670ms
/iceberg/iceberg table engine/feature/row policies/combination #743 OK 758ms
/iceberg/iceberg table engine/feature/row policies/combination #744 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #745 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #746 OK 737ms
/iceberg/iceberg table engine/feature/row policies/combination #747 OK 698ms
/iceberg/iceberg table engine/feature/row policies/combination #748 OK 672ms
/iceberg/iceberg table engine/feature/row policies/combination #749 OK 808ms
/iceberg/iceberg table engine/feature/row policies/combination #750 OK 759ms
/iceberg/iceberg table engine/feature/row policies/combination #751 OK 714ms
/iceberg/iceberg table engine/feature/row policies/combination #752 OK 710ms
/iceberg/iceberg table engine/feature/row policies/combination #753 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #754 OK 643ms
/iceberg/iceberg table engine/feature/row policies/combination #755 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #756 OK 772ms
/iceberg/iceberg table engine/feature/row policies/combination #757 OK 721ms
/iceberg/iceberg table engine/feature/row policies/combination #758 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #759 OK 811ms
/iceberg/iceberg table engine/feature/row policies/combination #760 OK 864ms
/iceberg/iceberg table engine/feature/row policies/combination #761 OK 803ms
/iceberg/iceberg table engine/feature/row policies/combination #762 OK 674ms
/iceberg/iceberg table engine/feature/row policies/combination #763 OK 672ms
/iceberg/iceberg table engine/feature/row policies/combination #764 OK 774ms
/iceberg/iceberg table engine/feature/row policies/combination #765 OK 843ms
/iceberg/iceberg table engine/feature/row policies/combination #766 OK 781ms
/iceberg/iceberg table engine/feature/row policies/combination #767 OK 663ms
/iceberg/iceberg table engine/feature/row policies/combination #768 OK 714ms
/iceberg/iceberg table engine/feature/row policies/combination #769 OK 832ms
/iceberg/iceberg table engine/feature/row policies/combination #770 OK 787ms
/iceberg/iceberg table engine/feature/row policies/combination #771 OK 648ms
/iceberg/iceberg table engine/feature/row policies/combination #772 OK 792ms
/iceberg/iceberg table engine/feature/row policies/combination #773 OK 778ms
/iceberg/iceberg table engine/feature/row policies/combination #774 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #775 OK 809ms
/iceberg/iceberg table engine/feature/row policies/combination #776 OK 787ms
/iceberg/iceberg table engine/feature/row policies/combination #777 OK 645ms
/iceberg/iceberg table engine/feature/row policies/combination #778 OK 751ms
/iceberg/iceberg table engine/feature/row policies/combination #779 OK 836ms
/iceberg/iceberg table engine/feature/row policies/combination #780 OK 804ms
/iceberg/iceberg table engine/feature/row policies/combination #781 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #782 OK 740ms
/iceberg/iceberg table engine/feature/row policies/combination #783 OK 811ms
/iceberg/iceberg table engine/feature/row policies/combination #784 OK 805ms
/iceberg/iceberg table engine/feature/row policies/combination #785 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #786 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #787 OK 711ms
/iceberg/iceberg table engine/feature/row policies/combination #788 OK 734ms
/iceberg/iceberg table engine/feature/row policies/combination #789 OK 770ms
/iceberg/iceberg table engine/feature/row policies/combination #790 OK 761ms
/iceberg/iceberg table engine/feature/row policies/combination #791 OK 734ms
/iceberg/iceberg table engine/feature/row policies/combination #792 OK 748ms
/iceberg/iceberg table engine/feature/row policies/combination #793 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #794 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #795 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #796 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #797 OK 768ms
/iceberg/iceberg table engine/feature/row policies/combination #798 OK 652ms
/iceberg/iceberg table engine/feature/row policies/combination #799 OK 657ms
/iceberg/iceberg table engine/feature/row policies/combination #800 OK 815ms
/iceberg/iceberg table engine/feature/row policies/combination #801 OK 729ms
/iceberg/iceberg table engine/feature/row policies/combination #802 OK 786ms
/iceberg/iceberg table engine/feature/row policies/combination #803 OK 744ms
/iceberg/iceberg table engine/feature/row policies/combination #804 OK 791ms
/iceberg/iceberg table engine/feature/row policies/combination #805 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #806 OK 738ms
/iceberg/iceberg table engine/feature/row policies/combination #807 OK 809ms
/iceberg/iceberg table engine/feature/row policies/combination #808 OK 674ms
/iceberg/iceberg table engine/feature/row policies/combination #809 OK 704ms
/iceberg/iceberg table engine/feature/row policies/combination #810 OK 762ms
/iceberg/iceberg table engine/feature/row policies/combination #811 OK 732ms
/iceberg/iceberg table engine/feature/row policies/combination #812 OK 788ms
/iceberg/iceberg table engine/feature/row policies/combination #813 OK 704ms
/iceberg/iceberg table engine/feature/row policies/combination #814 OK 805ms
/iceberg/iceberg table engine/feature/row policies/combination #815 OK 723ms
/iceberg/iceberg table engine/feature/row policies/combination #816 OK 788ms
/iceberg/iceberg table engine/feature/row policies/combination #817 OK 658ms
/iceberg/iceberg table engine/feature/row policies/combination #818 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #819 OK 824ms
/iceberg/iceberg table engine/feature/row policies/combination #820 OK 678ms
/iceberg/iceberg table engine/feature/row policies/combination #821 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #822 OK 691ms
/iceberg/iceberg table engine/feature/row policies/combination #823 OK 738ms
/iceberg/iceberg table engine/feature/row policies/combination #824 OK 798ms
/iceberg/iceberg table engine/feature/row policies/combination #825 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #826 OK 766ms
/iceberg/iceberg table engine/feature/row policies/combination #827 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #828 OK 735ms
/iceberg/iceberg table engine/feature/row policies/combination #829 OK 660ms
/iceberg/iceberg table engine/feature/row policies/combination #830 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #831 OK 758ms
/iceberg/iceberg table engine/feature/row policies/combination #832 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #833 OK 751ms
/iceberg/iceberg table engine/feature/row policies/combination #834 OK 750ms
/iceberg/iceberg table engine/feature/row policies/combination #835 OK 732ms
/iceberg/iceberg table engine/feature/row policies/combination #836 OK 748ms
/iceberg/iceberg table engine/feature/row policies/combination #837 OK 796ms
/iceberg/iceberg table engine/feature/row policies/combination #838 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #839 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #840 OK 778ms
/iceberg/iceberg table engine/feature/row policies/combination #841 OK 761ms
/iceberg/iceberg table engine/feature/row policies/combination #842 OK 735ms
/iceberg/iceberg table engine/feature/row policies/combination #843 OK 756ms
/iceberg/iceberg table engine/feature/row policies/combination #844 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #845 OK 817ms
/iceberg/iceberg table engine/feature/row policies/combination #846 OK 835ms
/iceberg/iceberg table engine/feature/row policies/combination #847 OK 684ms
/iceberg/iceberg table engine/feature/row policies/combination #848 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #849 OK 834ms
/iceberg/iceberg table engine/feature/row policies/combination #850 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #851 OK 755ms
/iceberg/iceberg table engine/feature/row policies/combination #852 OK 766ms
/iceberg/iceberg table engine/feature/row policies/combination #853 OK 792ms
/iceberg/iceberg table engine/feature/row policies/combination #854 OK 783ms
/iceberg/iceberg table engine/feature/row policies/combination #855 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #856 OK 820ms
/iceberg/iceberg table engine/feature/row policies/combination #857 OK 784ms
/iceberg/iceberg table engine/feature/row policies/combination #858 OK 739ms
/iceberg/iceberg table engine/feature/row policies/combination #859 OK 808ms
/iceberg/iceberg table engine/feature/row policies/combination #860 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #861 OK 707ms
/iceberg/iceberg table engine/feature/row policies/combination #862 OK 717ms
/iceberg/iceberg table engine/feature/row policies/combination #863 OK 822ms
/iceberg/iceberg table engine/feature/row policies/combination #864 OK 809ms
/iceberg/iceberg table engine/feature/row policies/combination #865 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #866 OK 770ms
/iceberg/iceberg table engine/feature/row policies/combination #867 OK 881ms
/iceberg/iceberg table engine/feature/row policies/combination #868 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #869 OK 864ms
/iceberg/iceberg table engine/feature/row policies/combination #870 OK 836ms
/iceberg/iceberg table engine/feature/row policies/combination #871 OK 810ms
/iceberg/iceberg table engine/feature/row policies/combination #872 OK 673ms
/iceberg/iceberg table engine/feature/row policies/combination #873 OK 905ms
/iceberg/iceberg table engine/feature/row policies/combination #874 OK 761ms
/iceberg/iceberg table engine/feature/row policies/combination #875 OK 749ms
/iceberg/iceberg table engine/feature/row policies/combination #876 OK 756ms
/iceberg/iceberg table engine/feature/row policies/combination #877 OK 833ms
/iceberg/iceberg table engine/feature/row policies/combination #878 OK 672ms
/iceberg/iceberg table engine/feature/row policies/combination #879 OK 753ms
/iceberg/iceberg table engine/feature/row policies/combination #880 OK 667ms
/iceberg/iceberg table engine/feature/row policies/combination #881 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #882 OK 785ms
/iceberg/iceberg table engine/feature/row policies/combination #883 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #884 OK 664ms
/iceberg/iceberg table engine/feature/row policies/combination #885 OK 834ms
/iceberg/iceberg table engine/feature/row policies/combination #886 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #887 OK 738ms
/iceberg/iceberg table engine/feature/row policies/combination #888 OK 746ms
/iceberg/iceberg table engine/feature/row policies/combination #889 OK 674ms
/iceberg/iceberg table engine/feature/row policies/combination #890 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #891 OK 679ms
/iceberg/iceberg table engine/feature/row policies/combination #892 OK 823ms
/iceberg/iceberg table engine/feature/row policies/combination #893 OK 747ms
/iceberg/iceberg table engine/feature/row policies/combination #894 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #895 OK 811ms
/iceberg/iceberg table engine/feature/row policies/combination #896 OK 787ms
/iceberg/iceberg table engine/feature/row policies/combination #897 OK 826ms
/iceberg/iceberg table engine/feature/row policies/combination #898 OK 682ms
/iceberg/iceberg table engine/feature/row policies/combination #899 OK 771ms
/iceberg/iceberg table engine/feature/row policies/combination #900 OK 791ms
/iceberg/iceberg table engine/feature/row policies/combination #901 OK 846ms
/iceberg/iceberg table engine/feature/row policies/combination #902 OK 758ms
/iceberg/iceberg table engine/feature/row policies/combination #903 OK 779ms
/iceberg/iceberg table engine/feature/row policies/combination #904 OK 754ms
/iceberg/iceberg table engine/feature/row policies/combination #905 OK 834ms
/iceberg/iceberg table engine/feature/row policies/combination #906 OK 766ms
/iceberg/iceberg table engine/feature/row policies/combination #907 OK 681ms
/iceberg/iceberg table engine/feature/row policies/combination #908 OK 668ms
/iceberg/iceberg table engine/feature/row policies/combination #909 OK 655ms
/iceberg/iceberg table engine/feature/row policies/combination #910 OK 818ms
/iceberg/iceberg table engine/feature/row policies/combination #911 OK 702ms
/iceberg/iceberg table engine/feature/row policies/combination #912 OK 818ms
/iceberg/iceberg table engine/feature/row policies/combination #913 OK 726ms
/iceberg/iceberg table engine/feature/row policies/combination #914 OK 781ms
/iceberg/iceberg table engine/feature/row policies/combination #915 OK 801ms
/iceberg/iceberg table engine/feature/row policies/combination #916 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #917 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #918 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #919 OK 810ms
/iceberg/iceberg table engine/feature/row policies/combination #920 OK 654ms
/iceberg/iceberg table engine/feature/row policies/combination #921 OK 808ms
/iceberg/iceberg table engine/feature/row policies/combination #922 OK 736ms
/iceberg/iceberg table engine/feature/row policies/combination #923 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #924 OK 680ms
/iceberg/iceberg table engine/feature/row policies/combination #925 OK 793ms
/iceberg/iceberg table engine/feature/row policies/combination #926 OK 758ms
/iceberg/iceberg table engine/feature/row policies/combination #927 OK 790ms
/iceberg/iceberg table engine/feature/row policies/combination #928 OK 712ms
/iceberg/iceberg table engine/feature/row policies/combination #929 OK 728ms
/iceberg/iceberg table engine/feature/row policies/combination #930 OK 744ms
/iceberg/iceberg table engine/feature/row policies/combination #931 OK 818ms
/iceberg/iceberg table engine/feature/row policies/combination #932 OK 831ms
/iceberg/iceberg table engine/feature/row policies/combination #933 OK 683ms
/iceberg/iceberg table engine/feature/row policies/combination #934 OK 699ms
/iceberg/iceberg table engine/feature/row policies/combination #935 OK 821ms
/iceberg/iceberg table engine/feature/row policies/combination #936 OK 735ms
/iceberg/iceberg table engine/feature/row policies/combination #937 OK 810ms
/iceberg/iceberg table engine/feature/row policies/combination #938 OK 673ms
/iceberg/iceberg table engine/feature/row policies/combination #939 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #940 OK 797ms
/iceberg/iceberg table engine/feature/row policies/combination #941 OK 757ms
/iceberg/iceberg table engine/feature/row policies/combination #942 OK 803ms
/iceberg/iceberg table engine/feature/row policies/combination #943 OK 727ms
/iceberg/iceberg table engine/feature/row policies/combination #944 OK 690ms
/iceberg/iceberg table engine/feature/row policies/combination #945 OK 807ms
/iceberg/iceberg table engine/feature/row policies/combination #946 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #947 OK 725ms
/iceberg/iceberg table engine/feature/row policies/combination #948 OK 774ms
/iceberg/iceberg table engine/feature/row policies/combination #949 OK 696ms
/iceberg/iceberg table engine/feature/row policies/combination #950 OK 749ms
/iceberg/iceberg table engine/feature/row policies/combination #951 OK 862ms
/iceberg/iceberg table engine/feature/row policies/combination #952 OK 683ms
/iceberg/iceberg table engine/feature/row policies/combination #953 OK 763ms
/iceberg/iceberg table engine/feature/row policies/combination #954 OK 858ms
/iceberg/iceberg table engine/feature/row policies/combination #955 OK 735ms
/iceberg/iceberg table engine/feature/row policies/combination #956 OK 720ms
/iceberg/iceberg table engine/feature/row policies/combination #957 OK 669ms
/iceberg/iceberg table engine/feature/row policies/combination #958 OK 735ms
/iceberg/iceberg table engine/feature/row policies/combination #959 OK 737ms
/iceberg/iceberg table engine/feature/row policies/combination #960 OK 751ms
/iceberg/iceberg table engine/feature/row policies/combination #961 OK 738ms
/iceberg/iceberg table engine/feature/row policies/combination #962 OK 821ms
/iceberg/iceberg table engine/feature/row policies/combination #963 OK 799ms
/iceberg/iceberg table engine/feature/row policies/combination #964 OK 673ms
/iceberg/iceberg table engine/feature/row policies/combination #965 OK 700ms
/iceberg/iceberg table engine/feature/row policies/combination #966 OK 846ms
/iceberg/iceberg table engine/feature/row policies/combination #967 OK 676ms
/iceberg/iceberg table engine/feature/row policies/combination #968 OK 840ms
/iceberg/iceberg table engine/feature/row policies/combination #969 OK 802ms
/iceberg/iceberg table engine/feature/row policies/combination #970 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #971 OK 734ms
/iceberg/iceberg table engine/feature/row policies/combination #972 OK 665ms
/iceberg/iceberg table engine/feature/row policies/combination #973 OK 805ms
/iceberg/iceberg table engine/feature/row policies/combination #974 OK 859ms
/iceberg/iceberg table engine/feature/row policies/combination #975 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #976 OK 764ms
/iceberg/iceberg table engine/feature/row policies/combination #977 OK 761ms
/iceberg/iceberg table engine/feature/row policies/combination #978 OK 705ms
/iceberg/iceberg table engine/feature/row policies/combination #979 OK 760ms
/iceberg/iceberg table engine/feature/row policies/combination #980 OK 806ms
/iceberg/iceberg table engine/feature/row policies/combination #981 OK 828ms
/iceberg/iceberg table engine/feature/row policies/combination #982 OK 822ms
/iceberg/iceberg table engine/feature/row policies/combination #983 OK 813ms
/iceberg/iceberg table engine/feature/row policies/combination #984 OK 762ms
/iceberg/iceberg table engine/feature/row policies/combination #985 OK 789ms
/iceberg/iceberg table engine/feature/row policies/combination #986 OK 760ms
/iceberg/iceberg table engine/feature/row policies/combination #987 OK 795ms
/iceberg/iceberg table engine/feature/row policies/combination #988 OK 837ms
/iceberg/iceberg table engine/feature/row policies/combination #989 OK 729ms
/iceberg/iceberg table engine/feature/row policies/combination #990 OK 671ms
/iceberg/iceberg table engine/feature/row policies/combination #991 OK 805ms
/iceberg/iceberg table engine/feature/row policies/combination #992 OK 671ms
/iceberg/iceberg table engine/feature/row policies/combination #993 OK 662ms
/iceberg/iceberg table engine/feature/row policies/combination #994 OK 745ms
/iceberg/iceberg table engine/feature/row policies/combination #995 OK 749ms
/iceberg/iceberg table engine/feature/row policies/combination #996 OK 733ms
/iceberg/iceberg table engine/feature/row policies/combination #997 OK 826ms
/iceberg/iceberg table engine/feature/row policies/combination #998 OK 742ms
/iceberg/iceberg table engine/feature/row policies/combination #999 OK 759ms
/iceberg/iceberg table engine/column rbac OK 8m 19s
/iceberg/iceberg table engine/column rbac/combination #0 OK 4s 691ms
/iceberg/iceberg table engine/column rbac/combination #1 OK 4s 844ms
/iceberg/iceberg table engine/column rbac/combination #2 OK 4s 851ms
/iceberg/iceberg table engine/column rbac/combination #3 OK 5s 231ms
/iceberg/iceberg table engine/column rbac/combination #4 OK 5s 15ms
/iceberg/iceberg table engine/column rbac/combination #5 OK 4s 927ms
/iceberg/iceberg table engine/column rbac/combination #6 OK 5s 0ms
/iceberg/iceberg table engine/column rbac/combination #7 OK 4s 883ms
/iceberg/iceberg table engine/column rbac/combination #8 OK 4s 878ms
/iceberg/iceberg table engine/column rbac/combination #9 OK 5s 446ms
/iceberg/iceberg table engine/column rbac/combination #10 OK 5s 25ms
/iceberg/iceberg table engine/column rbac/combination #11 OK 4s 804ms
/iceberg/iceberg table engine/column rbac/combination #12 OK 4s 664ms
/iceberg/iceberg table engine/column rbac/combination #13 OK 4s 827ms
/iceberg/iceberg table engine/column rbac/combination #14 OK 4s 768ms
/iceberg/iceberg table engine/column rbac/combination #15 OK 6s 617ms
/iceberg/iceberg table engine/column rbac/combination #16 OK 5s 523ms
/iceberg/iceberg table engine/column rbac/combination #17 OK 5s 87ms
/iceberg/iceberg table engine/column rbac/combination #18 OK 4s 789ms
/iceberg/iceberg table engine/column rbac/combination #19 OK 4s 718ms
/iceberg/iceberg table engine/column rbac/combination #20 OK 4s 947ms
/iceberg/iceberg table engine/column rbac/combination #21 OK 4s 656ms
/iceberg/iceberg table engine/column rbac/combination #22 OK 4s 744ms
/iceberg/iceberg table engine/column rbac/combination #23 OK 4s 622ms
/iceberg/iceberg table engine/column rbac/combination #24 OK 4s 887ms
/iceberg/iceberg table engine/column rbac/combination #25 OK 4s 627ms
/iceberg/iceberg table engine/column rbac/combination #26 OK 4s 823ms
/iceberg/iceberg table engine/column rbac/combination #27 OK 5s 41ms
/iceberg/iceberg table engine/column rbac/combination #28 OK 5s 65ms
/iceberg/iceberg table engine/column rbac/combination #29 OK 5s 266ms
/iceberg/iceberg table engine/column rbac/combination #30 OK 4s 837ms
/iceberg/iceberg table engine/column rbac/combination #31 OK 4s 986ms
/iceberg/iceberg table engine/column rbac/combination #32 OK 4s 743ms
/iceberg/iceberg table engine/column rbac/combination #33 OK 5s 70ms
/iceberg/iceberg table engine/column rbac/combination #34 OK 4s 744ms
/iceberg/iceberg table engine/column rbac/combination #35 OK 4s 637ms
/iceberg/iceberg table engine/column rbac/combination #36 OK 4s 623ms
/iceberg/iceberg table engine/column rbac/combination #37 OK 4s 762ms
/iceberg/iceberg table engine/column rbac/combination #38 OK 4s 632ms
/iceberg/iceberg table engine/column rbac/combination #39 OK 4s 688ms
/iceberg/iceberg table engine/column rbac/combination #40 OK 4s 975ms
/iceberg/iceberg table engine/column rbac/combination #41 OK 4s 651ms
/iceberg/iceberg table engine/column rbac/combination #42 OK 5s 700ms
/iceberg/iceberg table engine/column rbac/combination #43 OK 4s 935ms
/iceberg/iceberg table engine/column rbac/combination #44 OK 4s 797ms
/iceberg/iceberg table engine/column rbac/combination #45 OK 5s 372ms
/iceberg/iceberg table engine/column rbac/combination #46 OK 4s 658ms
/iceberg/iceberg table engine/column rbac/combination #47 OK 5s 52ms
/iceberg/iceberg table engine/column rbac/combination #48 OK 4s 518ms
/iceberg/iceberg table engine/column rbac/combination #49 OK 4s 802ms
/iceberg/iceberg table engine/column rbac/combination #50 OK 4s 703ms
/iceberg/iceberg table engine/column rbac/combination #51 OK 5s 520ms
/iceberg/iceberg table engine/column rbac/combination #52 OK 4s 767ms
/iceberg/iceberg table engine/column rbac/combination #53 OK 5s 100ms
/iceberg/iceberg table engine/column rbac/combination #54 OK 4s 644ms
/iceberg/iceberg table engine/column rbac/combination #55 OK 4s 697ms
/iceberg/iceberg table engine/column rbac/combination #56 OK 4s 754ms
/iceberg/iceberg table engine/column rbac/combination #57 OK 4s 988ms
/iceberg/iceberg table engine/column rbac/combination #58 OK 5s 274ms
/iceberg/iceberg table engine/column rbac/combination #59 OK 4s 952ms
/iceberg/iceberg table engine/column rbac/combination #60 OK 5s 363ms
/iceberg/iceberg table engine/column rbac/combination #61 OK 4s 702ms
/iceberg/iceberg table engine/column rbac/combination #62 OK 4s 668ms
/iceberg/iceberg table engine/column rbac/combination #63 OK 4s 772ms
/iceberg/iceberg table engine/column rbac/combination #64 OK 4s 750ms
/iceberg/iceberg table engine/column rbac/combination #65 OK 4s 811ms
/iceberg/iceberg table engine/column rbac/combination #66 OK 4s 710ms
/iceberg/iceberg table engine/column rbac/combination #67 OK 5s 440ms
/iceberg/iceberg table engine/column rbac/combination #68 OK 5s 103ms
/iceberg/iceberg table engine/column rbac/combination #69 OK 4s 879ms
/iceberg/iceberg table engine/column rbac/combination #70 OK 4s 582ms
/iceberg/iceberg table engine/column rbac/combination #71 OK 4s 957ms
/iceberg/iceberg table engine/column rbac/combination #72 OK 5s 16ms
/iceberg/iceberg table engine/column rbac/combination #73 OK 4s 648ms
/iceberg/iceberg table engine/column rbac/combination #74 OK 4s 658ms
/iceberg/iceberg table engine/column rbac/combination #75 OK 5s 8ms
/iceberg/iceberg table engine/column rbac/combination #76 OK 5s 701ms
/iceberg/iceberg table engine/column rbac/combination #77 OK 4s 790ms
/iceberg/iceberg table engine/column rbac/combination #78 OK 6s 181ms
/iceberg/iceberg table engine/column rbac/combination #79 OK 4s 857ms
/iceberg/iceberg table engine/column rbac/combination #80 OK 4s 871ms
/iceberg/iceberg table engine/column rbac/combination #81 OK 4s 865ms
/iceberg/iceberg table engine/column rbac/combination #82 OK 4s 866ms
/iceberg/iceberg table engine/column rbac/combination #83 OK 5s 89ms
/iceberg/iceberg table engine/column rbac/combination #84 OK 4s 886ms
/iceberg/iceberg table engine/column rbac/combination #85 OK 5s 136ms
/iceberg/iceberg table engine/column rbac/combination #86 OK 4s 784ms
/iceberg/iceberg table engine/column rbac/combination #87 OK 5s 106ms
/iceberg/iceberg table engine/column rbac/combination #88 OK 4s 689ms
/iceberg/iceberg table engine/column rbac/combination #89 OK 4s 840ms
/iceberg/iceberg table engine/column rbac/combination #90 OK 5s 114ms
/iceberg/iceberg table engine/column rbac/combination #91 OK 6s 67ms
/iceberg/iceberg table engine/column rbac/combination #92 OK 5s 173ms
/iceberg/iceberg table engine/column rbac/combination #93 OK 4s 599ms
/iceberg/iceberg table engine/column rbac/combination #94 OK 4s 727ms
/iceberg/iceberg table engine/column rbac/combination #95 OK 4s 749ms
/iceberg/iceberg table engine/column rbac/combination #96 OK 4s 767ms
/iceberg/iceberg table engine/column rbac/combination #97 OK 5s 963ms
/iceberg/iceberg table engine/column rbac/combination #98 OK 4s 816ms
/iceberg/iceberg table engine/column rbac/combination #99 OK 5s 275ms
/iceberg/iceberg table engine/feature OK 12s 929ms
/iceberg/iceberg table engine/feature/alter column OK 2s 454ms
/iceberg/iceberg table engine/feature/alter comment columns OK 1s 970ms
/iceberg/iceberg table engine/feature/alter partitions OK 3s 451ms
/iceberg/iceberg table engine/feature/alter settings OK 1s 696ms
/iceberg/iceberg table engine/feature/alter delete OK 1s 691ms
/iceberg/iceberg table engine/feature/alter order by OK 1s 662ms
/iceberg/iceberg table engine/feature OK 2s 54ms
/iceberg/iceberg table engine/feature/drop table OK 2s 53ms
/iceberg/iceberg table engine/feature OK 3s 498ms
/iceberg/iceberg table engine/feature/named collections config OK 1s 721ms
/iceberg/iceberg table engine/feature/named collections OK 1s 775ms
/iceberg/iceberg table engine/write min max pruning OK 1s 843ms
/iceberg/iceberg table engine/write min max pruning/write min max pruning OK 1s 842ms
/iceberg/iceberg table engine/system tables partition sorting keys OK 2s 372ms
/iceberg/iceberg table engine/system tables partition sorting keys/system tables partition sorting keys OK 2s 371ms
/iceberg/export partition OK 18m 12s
/iceberg/export partition/no catalog OK 3m 42s
/iceberg/export partition/no catalog/sanity OK 6s 647ms
/iceberg/export partition/no catalog/sanity/export single partition OK 1s 239ms
/iceberg/export partition/no catalog/sanity/export all partitions OK 1s 905ms
/iceberg/export partition/no catalog/sanity/export multiple partitions in one ALTER OK 1s 85ms
/iceberg/export partition/no catalog/sanity/export empty partition OK 1s 151ms
/iceberg/export partition/no catalog/sanity/export across replicas OK 1s 263ms
/iceberg/export partition/no catalog/partition compatibility OK 13s 629ms
/iceberg/export partition/no catalog/partition compatibility/accepted OK 7s 227ms
/iceberg/export partition/no catalog/partition compatibility/accepted/accepted﹕ compound identity (year, region) OK 907ms
/iceberg/export partition/no catalog/partition compatibility/accepted/accepted﹕ year transform (toYearNumSinceEpoch) OK 886ms
/iceberg/export partition/no catalog/partition compatibility/accepted/accepted﹕ month transform (toMonthNumSinceEpoch) OK 897ms
/iceberg/export partition/no catalog/partition compatibility/accepted/accepted﹕ day transform (toRelativeDayNum) OK 886ms
/iceberg/export partition/no catalog/partition compatibility/accepted/accepted﹕ hour transform (toRelativeHourNum) OK 930ms
/iceberg/export partition/no catalog/partition compatibility/accepted/accepted﹕ truncate[4] on String OK 914ms
/iceberg/export partition/no catalog/partition compatibility/accepted/accepted﹕ bucket[8] on Int64 OK 893ms
/iceberg/export partition/no catalog/partition compatibility/accepted/accepted﹕ compound mixed (year + bucket[16]) OK 908ms
/iceberg/export partition/no catalog/partition compatibility/rejected OK 6s 401ms
/iceberg/export partition/no catalog/partition compatibility/rejected/rejected﹕ compound field order reversed OK 820ms
/iceberg/export partition/no catalog/partition compatibility/rejected/rejected﹕ transform vs identity on same column OK 782ms
/iceberg/export partition/no catalog/partition compatibility/rejected/rejected﹕ bucket width mismatch ([8] vs [16]) OK 758ms
/iceberg/export partition/no catalog/partition compatibility/rejected/rejected﹕ truncate width mismatch ([4] vs [8]) OK 799ms
/iceberg/export partition/no catalog/partition compatibility/rejected/rejected﹕ field-count mismatch (2 vs 1) OK 835ms
/iceberg/export partition/no catalog/partition compatibility/rejected/rejected﹕ unsupported MergeTree expression (intDiv) OK 834ms
/iceberg/export partition/no catalog/partition compatibility/rejected/rejected﹕ different partition columns (year vs id) OK 788ms
/iceberg/export partition/no catalog/partition compatibility/rejected/rejected﹕ partitioned source, unpartitioned destination OK 779ms
/iceberg/export partition/no catalog/datatypes OK 25s 304ms
/iceberg/export partition/no catalog/datatypes/accepted OK 21s 246ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Int16 OK 1s 161ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Int32 OK 1s 140ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Int64 OK 1s 143ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ UInt32 OK 1s 149ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Float32 OK 1s 149ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Float64 OK 1s 137ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Date OK 1s 168ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Date32 OK 1s 150ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ DateTime OK 1s 333ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ DateTime64(3) OK 1s 206ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ String OK 1s 179ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ UUID OK 1s 162ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Nullable(Int64) with explicit NULLs OK 1s 230ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Nullable(String) with explicit NULLs OK 1s 244ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Array(Int32) OK 1s 166ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Array(String) OK 1s 182ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Map(String, Int64) OK 1s 187ms
/iceberg/export partition/no catalog/datatypes/accepted/accepted﹕ Tuple(Int32, String) -> struct OK 1s 147ms
/iceberg/export partition/no catalog/datatypes/rejected OK 4s 57ms
/iceberg/export partition/no catalog/datatypes/rejected/rejected﹕ Int8 OK 626ms
/iceberg/export partition/no catalog/datatypes/rejected/rejected﹕ UInt8 OK 560ms
/iceberg/export partition/no catalog/datatypes/rejected/rejected﹕ Bool OK 580ms
/iceberg/export partition/no catalog/datatypes/rejected/rejected﹕ FixedString(16) OK 593ms
/iceberg/export partition/no catalog/datatypes/rejected/rejected﹕ Decimal(10, 2) OK 571ms
/iceberg/export partition/no catalog/datatypes/rejected/rejected﹕ Enum8 OK 553ms
/iceberg/export partition/no catalog/datatypes/rejected/rejected﹕ LowCardinality(String) OK 567ms
/iceberg/export partition/no catalog/manifest integrity OK 6s 581ms
/iceberg/export partition/no catalog/manifest integrity/each export advances the snapshot list by one OK 1s 206ms
/iceberg/export partition/no catalog/manifest integrity/snapshot summary total-records matches exported row count OK 845ms
/iceberg/export partition/no catalog/manifest integrity/partition spec references source columns OK 916ms
/iceberg/export partition/no catalog/manifest integrity/data files have all required column stats OK 888ms
/iceberg/export partition/no catalog/manifest integrity/value_counts across data files sum to source row count XFail 967ms
/iceberg/export partition/no catalog/manifest integrity/data file paths live under the table prefix XFail 865ms
/iceberg/export partition/no catalog/manifest integrity/external iceberg reader round-trips exported data XFail 886ms
/iceberg/export partition/no catalog/catalogs OK 2s 204ms
/iceberg/export partition/no catalog/catalogs/no_catalog﹕ icebergS3 table function reads the committed export OK 948ms
/iceberg/export partition/no catalog/catalogs/no_catalog﹕ dropping the destination table keeps the committed data OK 1s 252ms
/iceberg/export partition/no catalog/catalogs/catalog﹕ export appends a snapshot visible through the external catalog Skip 826us
/iceberg/export partition/no catalog/catalogs/catalog﹕ external reader round-trips exported data Skip 1ms
/iceberg/export partition/no catalog/transactions OK 44s 209ms
/iceberg/export partition/no catalog/transactions/sequential exports append one append-snapshot each OK 1s 41ms
/iceberg/export partition/no catalog/transactions/duplicate export within TTL is rejected OK 934ms
/iceberg/export partition/no catalog/transactions/force_export overrides the idempotency gate OK 1s 56ms
/iceberg/export partition/no catalog/transactions/TTL expiry permits re-export of the same partition OK 7s 51ms
/iceberg/export partition/no catalog/transactions/commit survives pre-publish failure (non-retry cleanup) OK 32s 534ms
/iceberg/export partition/no catalog/transactions/commit durable across post-publish exception OK 1s 590ms
/iceberg/export partition/no catalog/concurrent writes OK 4s 509ms
/iceberg/export partition/no catalog/concurrent writes/multi-statement ALTER commits each partition as its own snapshot OK 1s 665ms
/iceberg/export partition/no catalog/concurrent writes/duplicate EXPORT inside one ALTER commits at most once OK 983ms
/iceberg/export partition/no catalog/concurrent writes/INSERT after a scheduled EXPORT does not leak into the snapshot OK 1s 859ms
/iceberg/export partition/no catalog/schema evolution OK 6s 588ms
/iceberg/export partition/no catalog/schema evolution/add column between exports OK 1s 804ms
/iceberg/export partition/no catalog/schema evolution/drop column between exports OK 1s 654ms
/iceberg/export partition/no catalog/schema evolution/modify column widen Int32 -> Int64 OK 1s 644ms
/iceberg/export partition/no catalog/schema evolution/rejected﹕ RENAME COLUMN on iceberg destination OK 299ms
/iceberg/export partition/no catalog/schema evolution/source-only schema drift is rejected at EXPORT OK 836ms
/iceberg/export partition/no catalog/schema evolution/iceberg schema history grows after ADD COLUMN OK 346ms
/iceberg/export partition/no catalog/partition spec evolution OK 4s 446ms
/iceberg/export partition/no catalog/partition spec evolution/single spec for multiple partition exports OK 1s 549ms
/iceberg/export partition/no catalog/partition spec evolution/partition tuple matches partition_id across exports OK 1s 437ms
/iceberg/export partition/no catalog/partition spec evolution/multi-column partition spec is preserved OK 1s 458ms
/iceberg/export partition/no catalog/storage paths OK 5s 351ms
/iceberg/export partition/no catalog/storage paths/full path﹕ metadata․json location is an absolute s3﹕∕∕ URI OK 822ms
/iceberg/export partition/no catalog/storage paths/default﹕ metadata․json location is bucket-relative (no FS scheme) OK 818ms
/iceberg/export partition/no catalog/storage paths/deep prefix hierarchy round-trips cleanly OK 1s 182ms
/iceberg/export partition/no catalog/storage paths/multiple destinations share a bucket but stay isolated OK 2s 525ms
/iceberg/export partition/no catalog/disaster recovery OK 23s 644ms
/iceberg/export partition/no catalog/disaster recovery/STOP MOVES holds the export PENDING, START MOVES resumes it OK 12s 725ms
/iceberg/export partition/no catalog/disaster recovery/KILL EXPORT PARTITION while moves are stopped transitions to KILLED OK 6s 380ms
/iceberg/export partition/no catalog/disaster recovery/EXPORT to a missing destination is rejected synchronously OK 709ms
/iceberg/export partition/no catalog/disaster recovery/EXPORT of a non-existent partition id is a safe no-op OK 3s 827ms
/iceberg/export partition/no catalog/multi replica recovery OK 38s 169ms
/iceberg/export partition/no catalog/multi replica recovery/concurrent exports from different replicas on different partitions Skip 669us
/iceberg/export partition/no catalog/multi replica recovery/concurrent exports of the same partition from different replicas are idempotent Skip 697us
/iceberg/export partition/no catalog/multi replica recovery/export recovers after a ZooKeeper restart mid-flight OK 3s 908ms
/iceberg/export partition/no catalog/multi replica recovery/export recovers after a ZooKeeper SIGKILL + docker start OK 34s 255ms
/iceberg/export partition/no catalog/multi replica recovery/concurrent cross-replica exports survive a ZooKeeper restart Skip 1ms
/iceberg/export partition/no catalog/multi replica recovery/concurrent cross-replica exports survive a ZooKeeper SIGKILL + docker start Skip 790us
/iceberg/export partition/no catalog/system monitoring OK 5s 85ms
/iceberg/export partition/no catalog/system monitoring/every system․replicated_partition_exports column is populated on success OK 1s 51ms
/iceberg/export partition/no catalog/system monitoring/system․part_log records one ExportPart per exported part OK 1s 363ms
/iceberg/export partition/no catalog/system monitoring/PartsExports and ExportPartitionZooKeeper* profile events increment OK 1s 247ms
/iceberg/export partition/no catalog/system monitoring/KILL EXPORT preserves source_replica and create_time OK 1s 421ms
/iceberg/export partition/no catalog/settings OK 2s 365ms
/iceberg/export partition/no catalog/settings/system_table_prefer_remote_information returns the same status OK 1s 29ms
/iceberg/export partition/no catalog/settings/output_format_parquet_compression_method flows to data files XFail 1s 334ms
/iceberg/export partition/no catalog/direct writes OK 3s 496ms
/iceberg/export partition/no catalog/direct writes/insert after export OK 1s 206ms
/iceberg/export partition/no catalog/direct writes/alternating export and insert OK 2s 288ms
/iceberg/export partition/no catalog/truncate OK 4s 356ms
/iceberg/export partition/no catalog/truncate/truncate after export OK 1s 516ms
/iceberg/export partition/no catalog/truncate/export after truncate repopulates destination OK 1s 536ms
/iceberg/export partition/no catalog/truncate/truncate after insert OK 1s 299ms
/iceberg/export partition/no catalog/minmax pruning OK 4s 212ms
/iceberg/export partition/no catalog/minmax pruning/minmax pruning on exported data OK 2s 218ms
/iceberg/export partition/no catalog/minmax pruning/minmax pruning on range predicate OK 1s 992ms
/iceberg/export partition/no catalog/zk compat OK 21s 286ms
/iceberg/export partition/no catalog/zk compat/export after restart recreates missing exports znode OK 4s 214ms
/iceberg/export partition/no catalog/zk compat/restart heals operator-deleted exports znode mid-session OK 17s 70ms
/iceberg/export partition/rest catalog OK 9m 29s
/iceberg/export partition/rest catalog/sanity OK 28s 948ms
/iceberg/export partition/rest catalog/sanity/export single partition OK 4s 396ms
/iceberg/export partition/rest catalog/sanity/export all partitions OK 11s 423ms
/iceberg/export partition/rest catalog/sanity/export multiple partitions in one ALTER OK 4s 315ms
/iceberg/export partition/rest catalog/sanity/export empty partition OK 4s 346ms
/iceberg/export partition/rest catalog/sanity/export across replicas OK 4s 463ms
/iceberg/export partition/rest catalog/partition compatibility Skip 925us
/iceberg/export partition/rest catalog/datatypes Skip 2ms
/iceberg/export partition/rest catalog/manifest integrity OK 32s 5ms
/iceberg/export partition/rest catalog/manifest integrity/each export advances the snapshot list by one OK 7s 469ms
/iceberg/export partition/rest catalog/manifest integrity/snapshot summary total-records matches exported row count OK 4s 26ms
/iceberg/export partition/rest catalog/manifest integrity/partition spec references source columns OK 4s 119ms
/iceberg/export partition/rest catalog/manifest integrity/data files have all required column stats OK 4s 19ms
/iceberg/export partition/rest catalog/manifest integrity/value_counts across data files sum to source row count XFail 4s 170ms
/iceberg/export partition/rest catalog/manifest integrity/data file paths live under the table prefix XFail 4s 103ms
/iceberg/export partition/rest catalog/manifest integrity/external iceberg reader round-trips exported data XFail 4s 91ms
/iceberg/export partition/rest catalog/catalogs OK 8s 215ms
/iceberg/export partition/rest catalog/catalogs/no_catalog﹕ icebergS3 table function reads the committed export Skip 828us
/iceberg/export partition/rest catalog/catalogs/no_catalog﹕ dropping the destination table keeps the committed data Skip 1ms
/iceberg/export partition/rest catalog/catalogs/catalog﹕ export appends a snapshot visible through the external catalog OK 4s 156ms
/iceberg/export partition/rest catalog/catalogs/catalog﹕ external reader round-trips exported data XFail 4s 54ms
/iceberg/export partition/rest catalog/transactions OK 1m 6s
/iceberg/export partition/rest catalog/transactions/sequential exports append one append-snapshot each OK 4s 285ms
/iceberg/export partition/rest catalog/transactions/duplicate export within TTL is rejected OK 4s 169ms
/iceberg/export partition/rest catalog/transactions/force_export overrides the idempotency gate OK 7s 424ms
/iceberg/export partition/rest catalog/transactions/TTL expiry permits re-export of the same partition OK 13s 372ms
/iceberg/export partition/rest catalog/transactions/commit survives pre-publish failure (non-retry cleanup) OK 32s 627ms
/iceberg/export partition/rest catalog/transactions/commit durable across post-publish exception OK 4s 683ms
/iceberg/export partition/rest catalog/concurrent writes OK 39s 751ms
/iceberg/export partition/rest catalog/concurrent writes/multi-statement ALTER commits each partition as its own snapshot OK 33s 714ms
/iceberg/export partition/rest catalog/concurrent writes/duplicate EXPORT inside one ALTER commits at most once OK 1s 14ms
/iceberg/export partition/rest catalog/concurrent writes/INSERT after a scheduled EXPORT does not leak into the snapshot OK 5s 21ms
/iceberg/export partition/rest catalog/schema evolution Skip 1ms
/iceberg/export partition/rest catalog/partition spec evolution OK 32s 862ms
/iceberg/export partition/rest catalog/partition spec evolution/single spec for multiple partition exports OK 11s 4ms
/iceberg/export partition/rest catalog/partition spec evolution/partition tuple matches partition_id across exports OK 10s 908ms
/iceberg/export partition/rest catalog/partition spec evolution/multi-column partition spec is preserved OK 10s 947ms
/iceberg/export partition/rest catalog/storage paths Skip 898us
/iceberg/export partition/rest catalog/disaster recovery OK 23s 907ms
/iceberg/export partition/rest catalog/disaster recovery/STOP MOVES holds the export PENDING, START MOVES resumes it OK 12s 813ms
/iceberg/export partition/rest catalog/disaster recovery/KILL EXPORT PARTITION while moves are stopped transitions to KILLED OK 6s 496ms
/iceberg/export partition/rest catalog/disaster recovery/EXPORT to a missing destination is rejected synchronously OK 687ms
/iceberg/export partition/rest catalog/disaster recovery/EXPORT of a non-existent partition id is a safe no-op OK 3s 908ms
/iceberg/export partition/rest catalog/multi replica recovery OK 2m 23s
/iceberg/export partition/rest catalog/multi replica recovery/concurrent exports from different replicas on different partitions OK 1s 925ms
/iceberg/export partition/rest catalog/multi replica recovery/concurrent exports of the same partition from different replicas are idempotent OK 1s 924ms
/iceberg/export partition/rest catalog/multi replica recovery/export recovers after a ZooKeeper restart mid-flight OK 34s 607ms
/iceberg/export partition/rest catalog/multi replica recovery/export recovers after a ZooKeeper SIGKILL + docker start OK 34s 293ms
/iceberg/export partition/rest catalog/multi replica recovery/concurrent cross-replica exports survive a ZooKeeper restart OK 35s 215ms
/iceberg/export partition/rest catalog/multi replica recovery/concurrent cross-replica exports survive a ZooKeeper SIGKILL + docker start OK 35s 54ms
/iceberg/export partition/rest catalog/system monitoring OK 14s 807ms
/iceberg/export partition/rest catalog/system monitoring/every system․replicated_partition_exports column is populated on success OK 4s 273ms
/iceberg/export partition/rest catalog/system monitoring/system․part_log records one ExportPart per exported part OK 4s 532ms
/iceberg/export partition/rest catalog/system monitoring/PartsExports and ExportPartitionZooKeeper* profile events increment OK 4s 436ms
/iceberg/export partition/rest catalog/system monitoring/KILL EXPORT preserves source_replica and create_time OK 1s 562ms
/iceberg/export partition/rest catalog/settings OK 8s 800ms
/iceberg/export partition/rest catalog/settings/system_table_prefer_remote_information returns the same status OK 4s 217ms
/iceberg/export partition/rest catalog/settings/output_format_parquet_compression_method flows to data files XFail 4s 581ms
/iceberg/export partition/rest catalog/direct writes OK 13s 402ms
/iceberg/export partition/rest catalog/direct writes/insert after export OK 4s 526ms
/iceberg/export partition/rest catalog/direct writes/alternating export and insert OK 8s 874ms
/iceberg/export partition/rest catalog/truncate OK 2m 13s
/iceberg/export partition/rest catalog/truncate/truncate after export OK 4s 819ms
/iceberg/export partition/rest catalog/truncate/export after truncate repopulates destination XFail 2m 4s
/iceberg/export partition/rest catalog/truncate/truncate after insert OK 4s 597ms
/iceberg/export partition/rest catalog/minmax pruning OK 23s 73ms
/iceberg/export partition/rest catalog/minmax pruning/minmax pruning on exported data OK 11s 670ms
/iceberg/export partition/rest catalog/minmax pruning/minmax pruning on range predicate OK 11s 401ms
/iceberg/export partition/rest catalog/zk compat OK 5ms
/iceberg/export partition/rest catalog/zk compat/export after restart recreates missing exports znode Skip 3ms
/iceberg/export partition/rest catalog/zk compat/restart heals operator-deleted exports znode mid-session Skip 769us
/iceberg/export partition/glue catalog OK 5m 0s
/iceberg/export partition/glue catalog/sanity OK 7s 692ms
/iceberg/export partition/glue catalog/sanity/export single partition OK 1s 583ms
/iceberg/export partition/glue catalog/sanity/export all partitions OK 2s 96ms
/iceberg/export partition/glue catalog/sanity/export multiple partitions in one ALTER OK 1s 255ms
/iceberg/export partition/glue catalog/sanity/export empty partition OK 1s 329ms
/iceberg/export partition/glue catalog/sanity/export across replicas OK 1s 425ms
/iceberg/export partition/glue catalog/partition compatibility Skip 1ms
/iceberg/export partition/glue catalog/datatypes Skip 1ms
/iceberg/export partition/glue catalog/manifest integrity OK 7s 917ms
/iceberg/export partition/glue catalog/manifest integrity/each export advances the snapshot list by one OK 1s 249ms
/iceberg/export partition/glue catalog/manifest integrity/snapshot summary total-records matches exported row count OK 977ms
/iceberg/export partition/glue catalog/manifest integrity/partition spec references source columns OK 1s 78ms
/iceberg/export partition/glue catalog/manifest integrity/data files have all required column stats OK 986ms
/iceberg/export partition/glue catalog/manifest integrity/value_counts across data files sum to source row count XFail 1s 118ms
/iceberg/export partition/glue catalog/manifest integrity/data file paths live under the table prefix XFail 1s 460ms
/iceberg/export partition/glue catalog/manifest integrity/external iceberg reader round-trips exported data XFail 1s 41ms
/iceberg/export partition/glue catalog/catalogs OK 2s 189ms
/iceberg/export partition/glue catalog/catalogs/no_catalog﹕ icebergS3 table function reads the committed export Skip 857us
/iceberg/export partition/glue catalog/catalogs/no_catalog﹕ dropping the destination table keeps the committed data Skip 850us
/iceberg/export partition/glue catalog/catalogs/catalog﹕ export appends a snapshot visible through the external catalog OK 1s 151ms
/iceberg/export partition/glue catalog/catalogs/catalog﹕ external reader round-trips exported data XFail 1s 34ms
/iceberg/export partition/glue catalog/transactions OK 45s 186ms
/iceberg/export partition/glue catalog/transactions/sequential exports append one append-snapshot each OK 1s 242ms
/iceberg/export partition/glue catalog/transactions/duplicate export within TTL is rejected OK 1s 136ms
/iceberg/export partition/glue catalog/transactions/force_export overrides the idempotency gate OK 1s 259ms
/iceberg/export partition/glue catalog/transactions/TTL expiry permits re-export of the same partition OK 7s 242ms
/iceberg/export partition/glue catalog/transactions/commit survives pre-publish failure (non-retry cleanup) OK 32s 702ms
/iceberg/export partition/glue catalog/transactions/commit durable across post-publish exception OK 1s 600ms
/iceberg/export partition/glue catalog/concurrent writes OK 38s 337ms
/iceberg/export partition/glue catalog/concurrent writes/multi-statement ALTER commits each partition as its own snapshot OK 35s 151ms
/iceberg/export partition/glue catalog/concurrent writes/duplicate EXPORT inside one ALTER commits at most once OK 1s 199ms
/iceberg/export partition/glue catalog/concurrent writes/INSERT after a scheduled EXPORT does not leak into the snapshot OK 1s 983ms
/iceberg/export partition/glue catalog/schema evolution Skip 1ms
/iceberg/export partition/glue catalog/partition spec evolution OK 5s 17ms
/iceberg/export partition/glue catalog/partition spec evolution/single spec for multiple partition exports OK 1s 739ms
/iceberg/export partition/glue catalog/partition spec evolution/partition tuple matches partition_id across exports OK 1s 651ms
/iceberg/export partition/glue catalog/partition spec evolution/multi-column partition spec is preserved OK 1s 625ms
/iceberg/export partition/glue catalog/storage paths Skip 876us
/iceberg/export partition/glue catalog/disaster recovery OK 24s 116ms
/iceberg/export partition/glue catalog/disaster recovery/STOP MOVES holds the export PENDING, START MOVES resumes it OK 12s 890ms
/iceberg/export partition/glue catalog/disaster recovery/KILL EXPORT PARTITION while moves are stopped transitions to KILLED OK 6s 594ms
/iceberg/export partition/glue catalog/disaster recovery/EXPORT to a missing destination is rejected synchronously OK 661ms
/iceberg/export partition/glue catalog/disaster recovery/EXPORT of a non-existent partition id is a safe no-op OK 3s 968ms
/iceberg/export partition/glue catalog/multi replica recovery OK 2m 23s
/iceberg/export partition/glue catalog/multi replica recovery/concurrent exports from different replicas on different partitions OK 2s 172ms
/iceberg/export partition/glue catalog/multi replica recovery/concurrent exports of the same partition from different replicas are idempotent OK 1s 713ms
/iceberg/export partition/glue catalog/multi replica recovery/export recovers after a ZooKeeper restart mid-flight OK 34s 592ms
/iceberg/export partition/glue catalog/multi replica recovery/export recovers after a ZooKeeper SIGKILL + docker start OK 34s 586ms
/iceberg/export partition/glue catalog/multi replica recovery/concurrent cross-replica exports survive a ZooKeeper restart OK 35s 347ms
/iceberg/export partition/glue catalog/multi replica recovery/concurrent cross-replica exports survive a ZooKeeper SIGKILL + docker start OK 35s 135ms
/iceberg/export partition/glue catalog/system monitoring OK 6s 388ms
/iceberg/export partition/glue catalog/system monitoring/every system․replicated_partition_exports column is populated on success OK 1s 257ms
/iceberg/export partition/glue catalog/system monitoring/system․part_log records one ExportPart per exported part OK 1s 566ms
/iceberg/export partition/glue catalog/system monitoring/PartsExports and ExportPartitionZooKeeper* profile events increment OK 1s 438ms
/iceberg/export partition/glue catalog/system monitoring/KILL EXPORT preserves source_replica and create_time OK 2s 123ms
/iceberg/export partition/glue catalog/settings OK 6s 163ms
/iceberg/export partition/glue catalog/settings/system_table_prefer_remote_information returns the same status OK 1s 287ms
/iceberg/export partition/glue catalog/settings/output_format_parquet_compression_method flows to data files XFail 4s 874ms
/iceberg/export partition/glue catalog/direct writes OK 4s 165ms
/iceberg/export partition/glue catalog/direct writes/insert after export OK 1s 466ms
/iceberg/export partition/glue catalog/direct writes/alternating export and insert OK 2s 697ms
/iceberg/export partition/glue catalog/truncate OK 4s 937ms
/iceberg/export partition/glue catalog/truncate/truncate after export OK 1s 711ms
/iceberg/export partition/glue catalog/truncate/export after truncate repopulates destination OK 1s 743ms
/iceberg/export partition/glue catalog/truncate/truncate after insert OK 1s 481ms
/iceberg/export partition/glue catalog/minmax pruning OK 5s 26ms
/iceberg/export partition/glue catalog/minmax pruning/minmax pruning on exported data OK 2s 866ms
/iceberg/export partition/glue catalog/minmax pruning/minmax pruning on range predicate OK 2s 158ms
/iceberg/export partition/glue catalog/zk compat OK 2ms
/iceberg/export partition/glue catalog/zk compat/export after restart recreates missing exports znode Skip 796us
/iceberg/export partition/glue catalog/zk compat/restart heals operator-deleted exports znode mid-session Skip 722us

Generated by TestFlows Open-Source Test Framework v2.0.250110.1002922