[NO ISSUE] Pass item type when creating external dataset properties
Change-Id: I8b6693d229a36358eda584ddfb95d1819f76ce5c
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/6963
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Hussain Towaileb <hussainht@gmail.com>
diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
index ab2cf61..0f669ef 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
@@ -737,12 +737,11 @@
break;
case EXTERNAL:
ExternalDetailsDecl externalDetails = (ExternalDetailsDecl) dd.getDatasetDetailsDecl();
- Map<String, String> properties =
- createExternalDatasetProperties(dataverseName, dd, metadataProvider, mdTxnCtx);
+ Map<String, String> properties = createExternalDatasetProperties(dataverseName, dd, itemTypeEntity,
+ metadataProvider, mdTxnCtx);
ExternalDataUtils.normalize(properties);
ExternalDataUtils.validate(properties);
- validateExternalDatasetProperties(externalDetails, properties, itemTypeEntity,
- dd.getSourceLocation(), mdTxnCtx);
+ validateExternalDatasetProperties(externalDetails, properties, dd.getSourceLocation(), mdTxnCtx);
datasetDetails = new ExternalDatasetDetails(externalDetails.getAdapter(), properties, new Date(),
TransactionState.COMMIT);
break;
@@ -853,7 +852,8 @@
}
protected Map<String, String> createExternalDatasetProperties(String dataverseName, DatasetDecl dd,
- MetadataProvider metadataProvider, MetadataTransactionContext mdTxnCtx) throws AlgebricksException {
+ Datatype itemType, MetadataProvider metadataProvider, MetadataTransactionContext mdTxnCtx)
+ throws AlgebricksException {
ExternalDetailsDecl externalDetails = (ExternalDetailsDecl) dd.getDatasetDetailsDecl();
return externalDetails.getProperties();
}
@@ -3240,8 +3240,8 @@
}
protected void validateExternalDatasetProperties(ExternalDetailsDecl externalDetails,
- Map<String, String> properties, Datatype itemType, SourceLocation srcLoc,
- MetadataTransactionContext mdTxnCtx) throws AlgebricksException, HyracksDataException {
+ Map<String, String> properties, SourceLocation srcLoc, MetadataTransactionContext mdTxnCtx)
+ throws AlgebricksException, HyracksDataException {
// Validate adapter specific properties
String adapter = externalDetails.getAdapter();
Map<String, String> details = new HashMap<>(properties);