This is an automated email from the ASF dual-hosted git repository.

etudenhoefner pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg.git


The following commit(s) were added to refs/heads/main by this push:
     new 1fb8e4fbd1 Core: Add a constructor to StaticTableOperations (#8996)
1fb8e4fbd1 is described below

commit 1fb8e4fbd11dea3c16e7c16d56d543bee2b53464
Author: Wonjae Lee <[email protected]>
AuthorDate: Wed Nov 8 18:41:44 2023 +0900

    Core: Add a constructor to StaticTableOperations (#8996)
---
 .../main/java/org/apache/iceberg/StaticTableOperations.java  | 12 ++++++++++++
 .../java/org/apache/iceberg/util/TestReachableFileUtil.java  |  2 +-
 .../org/apache/iceberg/spark/actions/BaseSparkAction.java    |  5 ++---
 3 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/core/src/main/java/org/apache/iceberg/StaticTableOperations.java 
b/core/src/main/java/org/apache/iceberg/StaticTableOperations.java
index fada6de9c4..77ee0920ed 100644
--- a/core/src/main/java/org/apache/iceberg/StaticTableOperations.java
+++ b/core/src/main/java/org/apache/iceberg/StaticTableOperations.java
@@ -44,6 +44,18 @@ public class StaticTableOperations implements 
TableOperations {
     this.locationProvider = locationProvider;
   }
 
+  public StaticTableOperations(TableMetadata staticMetadata, FileIO io) {
+    this(staticMetadata, io, null);
+  }
+
+  public StaticTableOperations(
+      TableMetadata staticMetadata, FileIO io, LocationProvider 
locationProvider) {
+    this.staticMetadata = staticMetadata;
+    this.metadataFileLocation = staticMetadata.metadataFileLocation();
+    this.io = io;
+    this.locationProvider = locationProvider;
+  }
+
   @Override
   public TableMetadata current() {
     if (staticMetadata == null) {
diff --git 
a/core/src/test/java/org/apache/iceberg/util/TestReachableFileUtil.java 
b/core/src/test/java/org/apache/iceberg/util/TestReachableFileUtil.java
index b8d686246b..13ed75f017 100644
--- a/core/src/test/java/org/apache/iceberg/util/TestReachableFileUtil.java
+++ b/core/src/test/java/org/apache/iceberg/util/TestReachableFileUtil.java
@@ -124,7 +124,7 @@ public class TestReachableFileUtil {
     TableMetadata metadata = ops.current();
     String metadataFileLocation = metadata.metadataFileLocation();
 
-    StaticTableOperations staticOps = new 
StaticTableOperations(metadataFileLocation, table.io());
+    StaticTableOperations staticOps = new StaticTableOperations(metadata, 
table.io());
     Table staticTable = new BaseTable(staticOps, metadataFileLocation);
 
     String reportedVersionHintLocation = 
ReachableFileUtil.versionHintLocation(staticTable);
diff --git 
a/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/actions/BaseSparkAction.java
 
b/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/actions/BaseSparkAction.java
index 62f5167526..d0e71a707d 100644
--- 
a/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/actions/BaseSparkAction.java
+++ 
b/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/actions/BaseSparkAction.java
@@ -137,9 +137,8 @@ abstract class BaseSparkAction<ThisT> {
   }
 
   protected Table newStaticTable(TableMetadata metadata, FileIO io) {
-    String metadataFileLocation = metadata.metadataFileLocation();
-    StaticTableOperations ops = new 
StaticTableOperations(metadataFileLocation, io);
-    return new BaseTable(ops, metadataFileLocation);
+    StaticTableOperations ops = new StaticTableOperations(metadata, io);
+    return new BaseTable(ops, metadata.metadataFileLocation());
   }
 
   protected Dataset<FileInfo> contentFileDS(Table table) {

Reply via email to