Skip to content

Commit 9d36e23

Browse files
authored
Bump to Java Iceberg 1.11.0 (#3389)
<!-- Thanks for opening a pull request! --> <!-- In the case this PR will resolve an issue, please replace ${GITHUB_ISSUE_ID} below with the actual Github issue id. --> <!-- Closes #${GITHUB_ISSUE_ID} --> # Rationale for this change This reverts #3240 and we now should be able to support custom `namespace-seperator` ## Are these changes tested? ## Are there any user-facing changes? <!-- In the case of user-facing changes, please add the changelog label. -->
1 parent 41276a3 commit 9d36e23

6 files changed

Lines changed: 10 additions & 8 deletions

File tree

dev/docker-compose-integration.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ services:
4747
retries: 5
4848
start_period: 90s
4949
rest:
50-
image: apache/iceberg-rest-fixture:1.10.1
50+
image: apache/iceberg-rest-fixture
5151
container_name: pyiceberg-rest
5252
networks:
5353
iceberg_net:

dev/spark/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ FROM apache/spark:${BASE_IMAGE_SPARK_VERSION}
1919

2020
# Dependency versions - keep these compatible
2121
# Changing these will invalidate the JAR download cache layer
22-
ARG ICEBERG_VERSION=1.10.1
22+
ARG ICEBERG_VERSION=1.11.0
2323
ARG ICEBERG_SPARK_RUNTIME_VERSION=4.0_2.13
2424
ARG HADOOP_VERSION=3.4.1
2525
ARG AWS_SDK_VERSION=2.24.6

pyiceberg/table/inspect.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,7 @@ def _get_all_manifests_schema(self) -> pa.Schema:
404404

405405
all_manifests_schema = self._get_manifests_schema()
406406
all_manifests_schema = all_manifests_schema.append(pa.field("reference_snapshot_id", pa.int64(), nullable=False))
407+
all_manifests_schema = all_manifests_schema.append(pa.field("key_metadata", pa.binary(), nullable=True))
407408
return all_manifests_schema
408409

409410
def _generate_manifests_table(self, snapshot: Snapshot | None, is_all_manifests_table: bool = False) -> pa.Table:
@@ -468,6 +469,7 @@ def _partition_summaries_to_rows(
468469
}
469470
if is_all_manifests_table:
470471
manifest_row["reference_snapshot_id"] = snapshot.snapshot_id
472+
manifest_row["key_metadata"] = manifest.key_metadata
471473
manifests.append(manifest_row)
472474

473475
return pa.Table.from_pylist(

tests/conftest.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3320,7 +3320,7 @@ def does_support_slash_in_identifier(catalog: Catalog) -> bool:
33203320
from pyiceberg.catalog.sql import SqlCatalog
33213321

33223322
if isinstance(catalog, RestCatalog):
3323-
return property_as_bool(catalog.properties, "supports_slash_in_identifier", True)
3323+
return property_as_bool(catalog.properties, "supports_slash_in_identifier", False)
33243324
from pyiceberg.catalog.hive import HiveCatalog
33253325

33263326
if isinstance(catalog, (HiveCatalog, NoopCatalog, SqlCatalog)):

tests/integration/test_catalog.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -670,7 +670,6 @@ def test_rest_drop_view(
670670

671671

672672
@pytest.mark.integration
673-
@pytest.mark.skip(reason="Requires Iceberg REST Fixtures 1.11.x")
674673
def test_rest_custom_namespace_separator(rest_catalog: RestCatalog, table_schema_simple: Schema) -> None:
675674
"""
676675
Tests that the REST catalog correctly picks up the namespace-separator from the config endpoint.
@@ -742,19 +741,19 @@ def test_namespace_with_slash(test_catalog: Catalog) -> None:
742741

743742
namespace = ("new/db",)
744743

745-
if test_catalog.namespace_exists(namespace):
744+
if namespace in test_catalog.list_namespaces():
746745
test_catalog.drop_namespace(namespace)
747746

748-
assert not test_catalog.namespace_exists(namespace)
747+
assert namespace not in test_catalog.list_namespaces()
749748

750749
test_catalog.create_namespace(namespace)
751-
assert test_catalog.namespace_exists(namespace)
750+
assert namespace in test_catalog.list_namespaces()
752751

753752
properties = test_catalog.load_namespace_properties(namespace)
754753
assert properties is not None
755754

756755
test_catalog.drop_namespace(namespace)
757-
assert not test_catalog.namespace_exists(namespace)
756+
assert namespace not in test_catalog.list_namespaces()
758757

759758

760759
@pytest.mark.integration

tests/integration/test_inspect_table.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1012,6 +1012,7 @@ def test_inspect_all_manifests(spark: SparkSession, session_catalog: Catalog, fo
10121012
"deleted_delete_files_count",
10131013
"partition_summaries",
10141014
"reference_snapshot_id",
1015+
"key_metadata",
10151016
]
10161017

10171018
int_cols = [

0 commit comments

Comments
 (0)