>From Hussain Towaileb <[email protected]>:
Hussain Towaileb has uploaded this change for review. (
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20941?usp=email )
Change subject: [NO ISSUE][EXT]: Refactor iceberg code
......................................................................
[NO ISSUE][EXT]: Refactor iceberg code
Change-Id: Ib4325aba8f1134ed84b8cb6f70dd644826804e49
---
M
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/iceberg/IcebergUtils.java
M
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/FunctionDataSource.java
2 files changed, 19 insertions(+), 1 deletion(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb
refs/changes/41/20941/1
diff --git
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/iceberg/IcebergUtils.java
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/iceberg/IcebergUtils.java
index 69480c8..ec8001f 100644
---
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/iceberg/IcebergUtils.java
+++
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/iceberg/IcebergUtils.java
@@ -52,6 +52,7 @@
import org.apache.asterix.external.util.iceberg.rest.RestUtils;
import org.apache.asterix.om.types.ARecordType;
import org.apache.iceberg.CatalogProperties;
+import org.apache.iceberg.Table;
import org.apache.iceberg.aws.AwsProperties;
import org.apache.iceberg.aws.glue.GlueCatalog;
import org.apache.iceberg.catalog.Catalog;
@@ -432,4 +433,21 @@
}
};
}
+
+ public static Table loadTable(Catalog catalog, TableIdentifier
tableIdentifier, CatalogConfig.IcebergCatalogSource source) {
+ return switch (source) {
+ case AWS_GLUE -> {
+ GlueCatalog glueCatalog = (GlueCatalog) catalog;
+ yield glueCatalog.loadTable(tableIdentifier);
+ }
+ case REST, AWS_GLUE_REST, BIGLAKE_METASTORE, S3_TABLES,
NESSIE_REST -> {
+ RESTCatalog restCatalog = (RESTCatalog) catalog;
+ yield restCatalog.loadTable(tableIdentifier);
+ }
+ case NESSIE -> {
+ NessieCatalog nessieCatalog = (NessieCatalog) catalog;
+ yield nessieCatalog.loadTable(tableIdentifier);
+ }
+ };
+ }
}
diff --git
a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/FunctionDataSource.java
b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/FunctionDataSource.java
index 02ffc25..f0d584d 100644
---
a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/FunctionDataSource.java
+++
b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/FunctionDataSource.java
@@ -124,7 +124,7 @@
}
protected abstract IDatasourceFunction createFunction(MetadataProvider
metadataProvider,
- AlgebricksAbsolutePartitionConstraint locations);
+ AlgebricksAbsolutePartitionConstraint locations) throws
AlgebricksException;
protected AlgebricksAbsolutePartitionConstraint
getLocations(IClusterStateManager csm, MetadataProvider md) {
String[] locations = md.getClusterLocations().getLocations();
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20941?usp=email
To unsubscribe, or for help writing mail filters, visit
https://asterix-gerrit.ics.uci.edu/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: asterixdb
Gerrit-Branch: lumina
Gerrit-Change-Id: Ib4325aba8f1134ed84b8cb6f70dd644826804e49
Gerrit-Change-Number: 20941
Gerrit-PatchSet: 1
Gerrit-Owner: Hussain Towaileb <[email protected]>