Merge branch 'master' into raman/master_feeds
diff --git a/asterix-algebra/.gitignore b/asterix-algebra/.gitignore
new file mode 100644
index 0000000..ea8c4bf
--- /dev/null
+++ b/asterix-algebra/.gitignore
@@ -0,0 +1 @@
+/target
diff --git a/asterix-app/src/main/java/edu/uci/ics/asterix/api/common/AsterixAppRuntimeContext.java b/asterix-app/src/main/java/edu/uci/ics/asterix/api/common/AsterixAppRuntimeContext.java
index 177072f..e56ed92 100644
--- a/asterix-app/src/main/java/edu/uci/ics/asterix/api/common/AsterixAppRuntimeContext.java
+++ b/asterix-app/src/main/java/edu/uci/ics/asterix/api/common/AsterixAppRuntimeContext.java
@@ -40,7 +40,6 @@
import edu.uci.ics.hyracks.api.io.IIOManager;
import edu.uci.ics.hyracks.api.lifecycle.ILifeCycleComponent;
import edu.uci.ics.hyracks.api.lifecycle.LifeCycleComponentManager;
-import edu.uci.ics.hyracks.storage.am.common.api.IIndex;
import edu.uci.ics.hyracks.storage.am.common.api.IIndexLifecycleManager;
import edu.uci.ics.hyracks.storage.am.lsm.common.api.ILSMIOOperationScheduler;
import edu.uci.ics.hyracks.storage.am.lsm.common.api.ILSMMergePolicy;
@@ -119,7 +118,8 @@
indexLifecycleManager = new DatasetLifecycleManager(storageProperties, localResourceRepository);
IAsterixAppRuntimeContextProvider asterixAppRuntimeContextProvider = new AsterixAppRuntimeContextProviderForRecovery(
this);
- txnSubsystem = new TransactionSubsystem(ncApplicationContext.getNodeId(), asterixAppRuntimeContextProvider, txnProperties);
+ txnSubsystem = new TransactionSubsystem(ncApplicationContext.getNodeId(), asterixAppRuntimeContextProvider,
+ txnProperties);
isShuttingdown = false;
// The order of registration is important. The buffer cache must registered before recovery and transaction managers.
@@ -140,10 +140,6 @@
}
public void deinitialize() throws HyracksDataException {
- bufferCache.close();
- for (IIndex index : indexLifecycleManager.getOpenIndexes()) {
- index.deactivate();
- }
}
public IBufferCache getBufferCache() {
diff --git a/asterix-app/src/main/java/edu/uci/ics/asterix/api/common/AsterixAppRuntimeContextProviderForRecovery.java b/asterix-app/src/main/java/edu/uci/ics/asterix/api/common/AsterixAppRuntimeContextProviderForRecovery.java
index c6365d5..712d993 100644
--- a/asterix-app/src/main/java/edu/uci/ics/asterix/api/common/AsterixAppRuntimeContextProviderForRecovery.java
+++ b/asterix-app/src/main/java/edu/uci/ics/asterix/api/common/AsterixAppRuntimeContextProviderForRecovery.java
@@ -16,6 +16,7 @@
import edu.uci.ics.asterix.common.transactions.IAsterixAppRuntimeContextProvider;
import edu.uci.ics.asterix.common.transactions.ITransactionSubsystem;
+import edu.uci.ics.asterix.transaction.management.service.transaction.AsterixRuntimeComponentsProvider;
import edu.uci.ics.hyracks.api.io.IIOManager;
import edu.uci.ics.hyracks.storage.am.common.api.IIndexLifecycleManager;
import edu.uci.ics.hyracks.storage.am.lsm.common.api.ILSMIOOperationCallbackProvider;
@@ -93,26 +94,26 @@
@Override
public ILSMIOOperationCallbackProvider getNoOpIOOperationCallbackProvider() {
- // TODO Auto-generated method stub
- return null;
+ return AsterixRuntimeComponentsProvider.NOINDEX_PROVIDER;
}
@Override
- public ILSMIOOperationCallbackProvider getLSMBTreeIOOperationCallbackProvider() {
- // TODO Auto-generated method stub
- return null;
+ public ILSMIOOperationCallbackProvider getLSMBTreeIOOperationCallbackProvider(boolean isPrimary) {
+ if (isPrimary) {
+ return AsterixRuntimeComponentsProvider.LSMBTREE_PRIMARY_PROVIDER;
+ } else {
+ return AsterixRuntimeComponentsProvider.LSMBTREE_SECONDARY_PROVIDER;
+ }
}
@Override
public ILSMIOOperationCallbackProvider getLSMRTreeIOOperationCallbackProvider() {
- // TODO Auto-generated method stub
- return null;
+ return AsterixRuntimeComponentsProvider.LSMRTREE_PROVIDER;
}
@Override
public ILSMIOOperationCallbackProvider getLSMInvertedIndexIOOperationCallbackProvider() {
- // TODO Auto-generated method stub
- return null;
+ return AsterixRuntimeComponentsProvider.LSMINVERTEDINDEX_PROVIDER;
}
@Override
diff --git a/asterix-app/src/test/resources/runtimets/queries/misc/year_01/year_01.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/misc/year_01/year_01.3.query.aql
index 5a2fb7b..933fdef 100644
--- a/asterix-app/src/test/resources/runtimets/queries/misc/year_01/year_01.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/misc/year_01/year_01.3.query.aql
@@ -1,3 +1,3 @@
use dataverse test;
-year("1996-12-01")
+get-year("1996-12-01")
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/abs0/abs0.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/abs0/abs0.3.query.aql
index b86c67a..8a41755 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/abs0/abs0.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/abs0/abs0.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("0")
let $c6 := int32("0")
let $c7 := int64("0")
-return {"f0": numeric-abs($c0), "f1": numeric-abs($c1),"f2": numeric-abs($c2), "f3": numeric-abs($c3),
- "f4": numeric-abs($c4),"f5": numeric-abs($c5) ,"f6": numeric-abs($c6), "f7": numeric-abs($c7)}
+return {"f0": abs($c0), "f1": abs($c1),"f2": abs($c2), "f3": abs($c3),
+ "f4": abs($c4),"f5": abs($c5) ,"f6": abs($c6), "f7": abs($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/abs1/abs1.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/abs1/abs1.3.query.aql
index cac32e5..018683b 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/abs1/abs1.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/abs1/abs1.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("22")
let $c6 := int32("23")
let $c7 := int64("27")
-return {"f0": numeric-abs($c0), "f1": numeric-abs($c1),"f2": numeric-abs($c2), "f3": numeric-abs($c3),
- "f4": numeric-abs($c4),"f5": numeric-abs($c5) ,"f6": numeric-abs($c6), "f7": numeric-abs($c7)}
+return {"f0": abs($c0), "f1": abs($c1),"f2": abs($c2), "f3": abs($c3),
+ "f4": abs($c4),"f5": abs($c5) ,"f6": abs($c6), "f7": abs($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/abs2/abs2.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/abs2/abs2.3.query.aql
index 4307a04..9668695 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/abs2/abs2.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/abs2/abs2.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := float("-INF")
let $c5 := float("-0.0")
let $c6 := float("0.0")
-return {"f0": numeric-abs($c0), "f1": numeric-abs($c1),"f2": numeric-abs($c2),
- "f3": numeric-abs($c3),"f4": numeric-abs($c4),"f5": numeric-abs($c5), "f6": numeric-abs($c6)}
+return {"f0": abs($c0), "f1": abs($c1),"f2": abs($c2),
+ "f3": abs($c3),"f4": abs($c4),"f5": abs($c5), "f6": abs($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/abs3/abs3.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/abs3/abs3.3.query.aql
index 691654f..c7c1d9d 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/abs3/abs3.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/abs3/abs3.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := double("-INF")
let $c5 := double("-0.0")
let $c6 := double("0.0")
-return {"d0": numeric-abs($c0), "d1": numeric-abs($c1),"d2": numeric-abs($c2),
- "d3": numeric-abs($c3),"d4": numeric-abs($c4),"d5": numeric-abs($c5), "d6": numeric-abs($c6)}
+return {"d0": abs($c0), "d1": abs($c1),"d2": abs($c2),
+ "d3": abs($c3),"d4": abs($c4),"d5": abs($c5), "d6": abs($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/abs4/abs4.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/abs4/abs4.3.query.aql
index 1c490cd..5bd043e 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/abs4/abs4.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/abs4/abs4.3.query.aql
@@ -1,4 +1,4 @@
use dataverse test;
let $c0 := int8("-20")
-return {"f0": numeric-abs($c0), "f1": numeric-abs(-1.11),"f2": numeric-abs(12.9), "f3": numeric-abs(1.11)}
+return {"f0": abs($c0), "f1": abs(-1.11),"f2": abs(12.9), "f3": abs(1.11)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling0/ceiling0.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling0/ceiling0.3.query.aql
index b5d24d7..9ad5a3e 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling0/ceiling0.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling0/ceiling0.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("0")
let $c6 := int32("0")
let $c7 := int64("0")
-return {"f0": numeric-ceiling($c0), "f1": numeric-ceiling($c1),"f2": numeric-ceiling($c2), "f3": numeric-ceiling($c3),
- "f4": numeric-ceiling($c4),"f5": numeric-ceiling($c5) ,"f6": numeric-ceiling($c6), "f7": numeric-ceiling($c7)}
+return {"f0": ceiling($c0), "f1": ceiling($c1),"f2": ceiling($c2), "f3": ceiling($c3),
+ "f4": ceiling($c4),"f5": ceiling($c5) ,"f6": ceiling($c6), "f7": ceiling($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling1/ceiling1.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling1/ceiling1.3.query.aql
index b40dc003..5e5ab8d 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling1/ceiling1.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling1/ceiling1.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("22")
let $c6 := int32("23")
let $c7 := int64("27")
-return {"f0": numeric-ceiling($c0), "f1": numeric-ceiling($c1),"f2": numeric-ceiling($c2), "f3": numeric-ceiling($c3),
- "f4": numeric-ceiling($c4),"f5": numeric-ceiling($c5) ,"f6": numeric-ceiling($c6), "f7": numeric-ceiling($c7)}
+return {"f0": ceiling($c0), "f1": ceiling($c1),"f2": ceiling($c2), "f3": ceiling($c3),
+ "f4": ceiling($c4),"f5": ceiling($c5) ,"f6": ceiling($c6), "f7": ceiling($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling2/ceiling2.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling2/ceiling2.3.query.aql
index 6d6b7a7..a5a394b 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling2/ceiling2.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling2/ceiling2.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := float("-INF")
let $c5 := float("-0.0")
let $c6 := float("0.0")
-return {"f0": numeric-ceiling($c0), "f1": numeric-ceiling($c1),"f2": numeric-ceiling($c2),
- "f3": numeric-ceiling($c3),"f4": numeric-ceiling($c4),"f5": numeric-ceiling($c5), "f6": numeric-ceiling($c6)}
+return {"f0": ceiling($c0), "f1": ceiling($c1),"f2": ceiling($c2),
+ "f3": ceiling($c3),"f4": ceiling($c4),"f5": ceiling($c5), "f6": ceiling($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling3/ceiling3.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling3/ceiling3.3.query.aql
index 51ecbf5..5c20198 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling3/ceiling3.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling3/ceiling3.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := double("-INF")
let $c5 := double("-0.0")
let $c6 := double("0.0")
-return {"d0": numeric-ceiling($c0), "d1": numeric-ceiling($c1),"d2": numeric-ceiling($c2),
- "d3": numeric-ceiling($c3),"d4": numeric-ceiling($c4),"d5": numeric-ceiling($c5), "d6": numeric-ceiling($c6)}
+return {"d0": ceiling($c0), "d1": ceiling($c1),"d2": ceiling($c2),
+ "d3": ceiling($c3),"d4": ceiling($c4),"d5": ceiling($c5), "d6": ceiling($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling4/ceiling4.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling4/ceiling4.3.query.aql
index 4d3b3ef..4076839 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling4/ceiling4.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/ceiling4/ceiling4.3.query.aql
@@ -1,4 +1,4 @@
use dataverse test;
let $c0 := int8("-20")
-return {"f0": numeric-ceiling($c0), "f1": numeric-ceiling(-1.11),"f2": numeric-ceiling(12.9), "f3": numeric-ceiling(1.11)}
+return {"f0": ceiling($c0), "f1": ceiling(-1.11),"f2": ceiling(12.9), "f3": ceiling(1.11)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/floor0/floor0.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/floor0/floor0.3.query.aql
index 64bec24..8b19fd8 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/floor0/floor0.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/floor0/floor0.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("0")
let $c6 := int32("0")
let $c7 := int64("0")
-return {"f0": numeric-floor($c0), "f1": numeric-floor($c1),"f2": numeric-floor($c2), "f3": numeric-floor($c3),
- "f4": numeric-floor($c4),"f5": numeric-floor($c5) ,"f6": numeric-floor($c6), "f7": numeric-floor($c7)}
+return {"f0": floor($c0), "f1": floor($c1),"f2": floor($c2), "f3": floor($c3),
+ "f4": floor($c4),"f5": floor($c5) ,"f6": floor($c6), "f7": floor($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/floor1/floor1.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/floor1/floor1.3.query.aql
index 2edc17a..3a7b13d 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/floor1/floor1.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/floor1/floor1.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("22")
let $c6 := int32("23")
let $c7 := int64("27")
-return {"f0": numeric-floor($c0), "f1": numeric-floor($c1),"f2": numeric-floor($c2), "f3": numeric-floor($c3),
- "f4": numeric-floor($c4),"f5": numeric-floor($c5) ,"f6": numeric-floor($c6), "f7": numeric-floor($c7)}
+return {"f0": floor($c0), "f1": floor($c1),"f2": floor($c2), "f3": floor($c3),
+ "f4": floor($c4),"f5": floor($c5) ,"f6": floor($c6), "f7": floor($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/floor2/floor2.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/floor2/floor2.3.query.aql
index 89c408d..aacefa1 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/floor2/floor2.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/floor2/floor2.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := float("-INF")
let $c5 := float("-0.0")
let $c6 := float("0.0")
-return {"f0": numeric-floor($c0), "f1": numeric-floor($c1),"f2": numeric-floor($c2),
- "f3": numeric-floor($c3),"f4": numeric-floor($c4),"f5": numeric-floor($c5), "f6": numeric-floor($c6)}
+return {"f0": floor($c0), "f1": floor($c1),"f2": floor($c2),
+ "f3": floor($c3),"f4": floor($c4),"f5": floor($c5), "f6": floor($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/floor3/floor3.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/floor3/floor3.3.query.aql
index 66b2183..2ac40d6 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/floor3/floor3.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/floor3/floor3.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := double("-INF")
let $c5 := double("-0.0")
let $c6 := double("0.0")
-return {"d0": numeric-floor($c0), "d1": numeric-floor($c1),"d2": numeric-floor($c2),
- "d3": numeric-floor($c3),"d4": numeric-floor($c4),"d5": numeric-floor($c5), "d6": numeric-floor($c6)}
+return {"d0": floor($c0), "d1": floor($c1),"d2": floor($c2),
+ "d3": floor($c3),"d4": floor($c4),"d5": floor($c5), "d6": floor($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/floor4/floor4.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/floor4/floor4.3.query.aql
index 77c6069..f0af1b9 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/floor4/floor4.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/floor4/floor4.3.query.aql
@@ -1,4 +1,4 @@
use dataverse test;
let $c0 := int8("-20")
-return {"f0": numeric-floor($c0), "f1": numeric-floor(-1.11),"f2": numeric-floor(12.9), "f3": numeric-floor(1.11)}
+return {"f0": floor($c0), "f1": floor(-1.11),"f2": floor(12.9), "f3": floor(1.11)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even0/round-half-to-even0.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even0/round-half-to-even0.3.query.aql
index 6c5e177..c3ede85 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even0/round-half-to-even0.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even0/round-half-to-even0.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("0")
let $c6 := int32("0")
let $c7 := int64("0")
-return {"f0": numeric-round-half-to-even($c0), "f1": numeric-round-half-to-even($c1),"f2": numeric-round-half-to-even($c2), "f3": numeric-round-half-to-even($c3),
- "f4": numeric-round-half-to-even($c4),"f5": numeric-round-half-to-even($c5) ,"f6": numeric-round-half-to-even($c6), "f7": numeric-round-half-to-even($c7)}
+return {"f0": round-half-to-even($c0), "f1": round-half-to-even($c1),"f2": round-half-to-even($c2), "f3": round-half-to-even($c3),
+ "f4": round-half-to-even($c4),"f5": round-half-to-even($c5) ,"f6": round-half-to-even($c6), "f7": round-half-to-even($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even1/round-half-to-even1.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even1/round-half-to-even1.3.query.aql
index 271b0c3..2353ffe 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even1/round-half-to-even1.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even1/round-half-to-even1.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("22")
let $c6 := int32("23")
let $c7 := int64("27")
-return {"f0": numeric-round-half-to-even($c0), "f1": numeric-round-half-to-even($c1),"f2": numeric-round-half-to-even($c2), "f3": numeric-round-half-to-even($c3),
- "f4": numeric-round-half-to-even($c4),"f5": numeric-round-half-to-even($c5) ,"f6": numeric-round-half-to-even($c6), "f7": numeric-round-half-to-even($c7)}
+return {"f0": round-half-to-even($c0), "f1": round-half-to-even($c1),"f2": round-half-to-even($c2), "f3": round-half-to-even($c3),
+ "f4": round-half-to-even($c4),"f5": round-half-to-even($c5) ,"f6": round-half-to-even($c6), "f7": round-half-to-even($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even2/round-half-to-even2.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even2/round-half-to-even2.3.query.aql
index f420b2a..b717a53 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even2/round-half-to-even2.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even2/round-half-to-even2.3.query.aql
@@ -8,5 +8,5 @@
let $c4 := float("-INF")
let $c5 := float("-0.0")
let $c6 := float("0.0")
-return {"f0": numeric-round-half-to-even($c0), "f1": numeric-round-half-to-even($c1),"f2": numeric-round-half-to-even($c2),
- "f3": numeric-round-half-to-even($c3),"f4": numeric-round-half-to-even($c4),"f5": numeric-round-half-to-even($c5), "f6": numeric-round-half-to-even($c6)}
+return {"f0": round-half-to-even($c0), "f1": round-half-to-even($c1),"f2": round-half-to-even($c2),
+ "f3": round-half-to-even($c3),"f4": round-half-to-even($c4),"f5": round-half-to-even($c5), "f6": round-half-to-even($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even20/round-half-to-even20.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even20/round-half-to-even20.3.query.aql
index d14fb40..177dd8b 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even20/round-half-to-even20.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even20/round-half-to-even20.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("0")
let $c6 := int32("0")
let $c7 := int64("0")
-return {"f0": numeric-round-half-to-even($c0,2), "f1": numeric-round-half-to-even($c1,2),"f2": numeric-round-half-to-even($c2,2), "f3": numeric-round-half-to-even($c3,2),
- "f4": numeric-round-half-to-even($c4,2),"f5": numeric-round-half-to-even($c5,2) ,"f6": numeric-round-half-to-even($c6,2), "f7": numeric-round-half-to-even($c7,2)}
+return {"f0": round-half-to-even($c0,2), "f1": round-half-to-even($c1,2),"f2": round-half-to-even($c2,2), "f3": round-half-to-even($c3,2),
+ "f4": round-half-to-even($c4,2),"f5": round-half-to-even($c5,2) ,"f6": round-half-to-even($c6,2), "f7": round-half-to-even($c7,2)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even21/round-half-to-even21.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even21/round-half-to-even21.3.query.aql
index 958a63d..e3d3109 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even21/round-half-to-even21.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even21/round-half-to-even21.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("22")
let $c6 := int32("23")
let $c7 := int64("27")
-return {"f0": numeric-round-half-to-even($c0,2), "f1": numeric-round-half-to-even($c1,2),"f2": numeric-round-half-to-even($c2,2), "f3": numeric-round-half-to-even($c3,2),
- "f4": numeric-round-half-to-even($c4,2),"f5": numeric-round-half-to-even($c5,2) ,"f6": numeric-round-half-to-even($c6,2), "f7": numeric-round-half-to-even($c7,2)}
+return {"f0": round-half-to-even($c0,2), "f1": round-half-to-even($c1,2),"f2": round-half-to-even($c2,2), "f3": round-half-to-even($c3,2),
+ "f4": round-half-to-even($c4,2),"f5": round-half-to-even($c5,2) ,"f6": round-half-to-even($c6,2), "f7": round-half-to-even($c7,2)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even22/round-half-to-even22.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even22/round-half-to-even22.3.query.aql
index e9aa46c..301b081 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even22/round-half-to-even22.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even22/round-half-to-even22.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := float("-INF")
let $c5 := float("-0.0")
let $c6 := float("0.0")
-return {"d0": numeric-round-half-to-even($c0,2), "d1": numeric-round-half-to-even($c1,2),"d2": numeric-round-half-to-even($c2,3),
- "d3": numeric-round-half-to-even($c3,4),"d4": numeric-round-half-to-even($c4,5),"d5": numeric-round-half-to-even($c5,6), "d6": numeric-round-half-to-even($c6,0)}
+return {"d0": round-half-to-even($c0,2), "d1": round-half-to-even($c1,2),"d2": round-half-to-even($c2,3),
+ "d3": round-half-to-even($c3,4),"d4": round-half-to-even($c4,5),"d5": round-half-to-even($c5,6), "d6": round-half-to-even($c6,0)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even23/round-half-to-even23.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even23/round-half-to-even23.3.query.aql
index 8fe4615..f0fea44 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even23/round-half-to-even23.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even23/round-half-to-even23.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := double("-INF")
let $c5 := double("-0.0")
let $c6 := double("0.0")
-return {"d0": numeric-round-half-to-even($c0,2), "d1": numeric-round-half-to-even($c1,2),"d2": numeric-round-half-to-even($c2,3),
- "d3": numeric-round-half-to-even($c3,4),"d4": numeric-round-half-to-even($c4,5),"d5": numeric-round-half-to-even($c5,6), "d6": numeric-round-half-to-even($c6,0)}
+return {"d0": round-half-to-even($c0,2), "d1": round-half-to-even($c1,2),"d2": round-half-to-even($c2,3),
+ "d3": round-half-to-even($c3,4),"d4": round-half-to-even($c4,5),"d5": round-half-to-even($c5,6), "d6": round-half-to-even($c6,0)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even24/round-half-to-even24.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even24/round-half-to-even24.3.query.aql
index 9b3095f..088b569 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even24/round-half-to-even24.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even24/round-half-to-even24.3.query.aql
@@ -5,5 +5,5 @@
let $c2 := double("3.567812E+3")
let $c3 := double("4.7564E-3")
let $c4 := double("35612.25")
-return {"d0": numeric-round-half-to-even($c0,2), "d1": numeric-round-half-to-even($c1,2),"d2": numeric-round-half-to-even($c2,2),
- "d3": numeric-round-half-to-even($c3,2),"d4": numeric-round-half-to-even($c4,-2)}
+return {"d0": round-half-to-even($c0,2), "d1": round-half-to-even($c1,2),"d2": round-half-to-even($c2,2),
+ "d3": round-half-to-even($c3,2),"d4": round-half-to-even($c4,-2)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even3/round-half-to-even3.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even3/round-half-to-even3.3.query.aql
index e9c4587..29f7326 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even3/round-half-to-even3.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even3/round-half-to-even3.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := double("-INF")
let $c5 := double("-0.0")
let $c6 := double("0.0")
-return {"d0": numeric-round-half-to-even($c0), "d1": numeric-round-half-to-even($c1), "d2": numeric-round-half-to-even($c2),
- "d3": numeric-round-half-to-even($c3), "d4": numeric-round-half-to-even($c4), "d5": numeric-round-half-to-even($c5), "d6": numeric-round-half-to-even($c6)}
+return {"d0": round-half-to-even($c0), "d1": round-half-to-even($c1), "d2": round-half-to-even($c2),
+ "d3": round-half-to-even($c3), "d4": round-half-to-even($c4), "d5": round-half-to-even($c5), "d6": round-half-to-even($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even4/round-half-to-even4.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even4/round-half-to-even4.3.query.aql
index b678603..f1a533d 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even4/round-half-to-even4.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even4/round-half-to-even4.3.query.aql
@@ -2,4 +2,4 @@
let $c0 := double("1.5")
let $c1 := double("2.5")
-return {"d0": numeric-round-half-to-even($c0), "d1": numeric-round-half-to-even($c1)}
+return {"d0": round-half-to-even($c0), "d1": round-half-to-even($c1)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even5/round-half-to-even5.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even5/round-half-to-even5.3.query.aql
index 63a6acd..455dd02 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even5/round-half-to-even5.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round-half-to-even5/round-half-to-even5.3.query.aql
@@ -1,4 +1,4 @@
use dataverse test;
let $c0 := int8("-20")
-return {"f0": numeric-round-half-to-even($c0), "f1": numeric-round-half-to-even(-1.5),"f2": numeric-round-half-to-even(12.5), "f3": numeric-round-half-to-even(1.5)}
+return {"f0": round-half-to-even($c0), "f1": round-half-to-even(-1.5),"f2": round-half-to-even(12.5), "f3": round-half-to-even(1.5)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round0/round0.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round0/round0.3.query.aql
index 3ecd6a7..b7a42df 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round0/round0.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round0/round0.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("0")
let $c6 := int32("0")
let $c7 := int64("0")
-return {"f0": numeric-round($c0), "f1": numeric-round($c1),"f2": numeric-round($c2), "f3": numeric-round($c3),
- "f4": numeric-round($c4),"f5": numeric-round($c5) ,"f6": numeric-round($c6), "f7": numeric-round($c7)}
+return {"f0": round($c0), "f1": round($c1),"f2": round($c2), "f3": round($c3),
+ "f4": round($c4),"f5": round($c5) ,"f6": round($c6), "f7": round($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round1/round1.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round1/round1.3.query.aql
index 5a66f35..142287d 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round1/round1.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round1/round1.3.query.aql
@@ -8,5 +8,5 @@
let $c5 := int16("22")
let $c6 := int32("23")
let $c7 := int64("27")
-return {"f0": numeric-round($c0), "f1": numeric-round($c1),"f2": numeric-round($c2), "f3": numeric-round($c3),
- "f4": numeric-round($c4),"f5": numeric-round($c5) ,"f6": numeric-round($c6), "f7": numeric-round($c7)}
+return {"f0": round($c0), "f1": round($c1),"f2": round($c2), "f3": round($c3),
+ "f4": round($c4),"f5": round($c5) ,"f6": round($c6), "f7": round($c7)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round2/round2.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round2/round2.3.query.aql
index 941b606..4e147f8 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round2/round2.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round2/round2.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := float("-INF")
let $c5 := float("-0.0")
let $c6 := float("0.0")
-return {"f0": numeric-round($c0), "f1": numeric-round($c1),"f2": numeric-round($c2),
- "f3": numeric-round($c3),"f4": numeric-round($c4),"f5": numeric-round($c5), "f6": numeric-round($c6)}
+return {"f0": round($c0), "f1": round($c1),"f2": round($c2),
+ "f3": round($c3),"f4": round($c4),"f5": round($c5), "f6": round($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round3/round3.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round3/round3.3.query.aql
index 90aa1e4..f315c2e 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round3/round3.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round3/round3.3.query.aql
@@ -7,5 +7,5 @@
let $c4 := double("-INF")
let $c5 := double("-0.0")
let $c6 := double("0.0")
-return {"d0": numeric-round($c0), "d1": numeric-round($c1),"d2": numeric-round($c2),
- "d3": numeric-round($c3),"d4": numeric-round($c4),"d5": numeric-round($c5), "d6": numeric-round($c6)}
+return {"d0": round($c0), "d1": round($c1),"d2": round($c2),
+ "d3": round($c3),"d4": round($c4),"d5": round($c5), "d6": round($c6)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/numeric/round4/round4.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/numeric/round4/round4.3.query.aql
index 49646b4..61e85bd 100644
--- a/asterix-app/src/test/resources/runtimets/queries/numeric/round4/round4.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/numeric/round4/round4.3.query.aql
@@ -1,4 +1,4 @@
use dataverse test;
let $c0 := int8("-20")
-return {"f0": numeric-round($c0), "f1": numeric-round(-1.11),"f2": numeric-round(12.9), "f3": numeric-round(1.11)}
+return {"f0": round($c0), "f1": round(-1.11),"f2": round(12.9), "f3": round(1.11)}
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/accessors/accessors.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/accessors/accessors.3.query.aql
index c41d37d..42cc4a6 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/accessors/accessors.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/accessors/accessors.3.query.aql
@@ -9,4 +9,4 @@
let $c7 := string("-0003-01-09T23:12:12.39-07:00")
let $c8 := duration("P3Y73M632DT49H743M3948.94S")
-return {"year1": year($c1), "year2": year($c2), "year3": year($c3), "year4": year($c4), "year5": year($c5), "year6": year($c7), "year7": year($c8), "year-null": year(null), "month1": month($c1), "month2": month($c2), "month3": month($c3), "month4": month($c4), "month5": month($c5), "month6": month($c8), "month-null": month(null), "day1": day($c1), "day2": day($c2), "day3": day($c3), "day4": day($c4), "day5": day($c5), "day6": day($c8), "day-null": day(null), "hour1": hour($c2), "hour2": hour($c5), "hour3": hour($c6), "hour4": hour($c8), "hour-null": hour(null), "min1": minute($c2), "min2": minute($c5), "min3": minute($c6), "min4": minute($c8), "min-null": minute(null), "second1": second($c2), "second2": second($c5), "second3": second($c6), "second4": second($c8), "second-null": second(null), "ms1": millisecond($c2), "ms2": millisecond($c5), "ms3": millisecond($c6), "ms4": millisecond($c8), "ms-null": millisecond(null) }
+return {"year1": get-year($c1), "year2": get-year($c2), "year3": get-year($c3), "year4": get-year($c4), "year5": get-year($c5), "year6": get-year($c7), "year7": get-year($c8), "year-null": get-year(null), "month1": get-month($c1), "month2": get-month($c2), "month3": get-month($c3), "month4": get-month($c4), "month5": get-month($c5), "month6": get-month($c8), "month-null": get-month(null), "day1": get-day($c1), "day2": get-day($c2), "day3": get-day($c3), "day4": get-day($c4), "day5": get-day($c5), "day6": get-day($c8), "day-null": get-day(null), "hour1": get-hour($c2), "hour2": get-hour($c5), "hour3": get-hour($c6), "hour4": get-hour($c8), "hour-null": get-hour(null), "min1": get-minute($c2), "min2": get-minute($c5), "min3": get-minute($c6), "min4": get-minute($c8), "min-null": get-minute(null), "second1": get-second($c2), "second2": get-second($c5), "second3": get-second($c6), "second4": get-second($c8), "second-null": get-second(null), "ms1": get-millisecond($c2), "ms2": get-millisecond($c5), "ms3": get-millisecond($c6), "ms4": get-millisecond($c8), "ms-null": get-millisecond(null) }
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/date_functions/date_functions.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/date_functions/date_functions.3.query.aql
index 143a02b..3927f72 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/date_functions/date_functions.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/date_functions/date_functions.3.query.aql
@@ -4,10 +4,10 @@
let $d1 := date-from-unix-time-in-days(15600)
let $null1 := date-from-unix-time-in-days(null)
let $dt1 := datetime("1327-12-02T23:35:49.938Z")
-let $d2 := date-from-datetime($dt1)
-let $null2 := date-from-datetime(null)
+let $d2 := get-date-from-datetime($dt1)
+let $null2 := get-date-from-datetime(null)
let $dt2 := datetime("2012-10-11T02:30:23+03:00")
-let $d3 := date-from-datetime($dt2)
+let $d3 := get-date-from-datetime($dt2)
let $dr1 := duration("-P2Y1M90DT30H")
let $d4 := add-date-duration($d1, $dr1)
let $null3 := add-date-duration(null, $dr1)
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/interval_functions/interval_functions.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/interval_functions/interval_functions.3.query.aql
index 1eb5f53..7a7c4d9 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/interval_functions/interval_functions.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/interval_functions/interval_functions.3.query.aql
@@ -23,8 +23,8 @@
let $blnOverlapped1 := interval-overlapped-by($itv8, $itv7)
let $blnOverlaps2 := interval-overlaps($itv9, $itv8)
let $blnOverlapped2 := interval-overlapped-by($itv8, $itv9)
-let $blnOverlap1 := overlap($itv9, $itv7)
-let $blnOverlap2 := overlap($itv9, $itv8)
+let $blnOverlap1 := interval-overlapping($itv9, $itv7)
+let $blnOverlap2 := interval-overlapping($itv9, $itv8)
let $itv10 := interval-from-date("2010-10-30", "2010-11-30")
let $blnStarts1 := interval-starts($itv10, $itv1)
@@ -48,6 +48,6 @@
let $null1 := interval-before(null, $itv2)
let $null2 := interval-covered-by($itv11, null)
-let $null3 := overlap(null, null)
+let $null3 := interval-overlapping(null, null)
return { "before1" : $blnBefore1, "before2" : $blnBefore2, "after1" : $blnAfter1, "after2" : $blnAfter2, "meet1" : $blnMeet1, "meet2" : $blnMeet2, "metby1" : $blnMetBy1, "metby2" : $blnMetBy2, "overlaps1" : $blnOverlaps1, "overlaps2" : $blnOverlaps2, "overlapped1" : $blnOverlapped1, "overlapped2" : $blnOverlapped2, "overlap1" : $blnOverlap1, "overlap2" : $blnOverlap2, "starts1" : $blnStarts1, "starts2" : $blnStarts2, "startedby1" : $blnStartedBy1, "startedby2" : $blnStartedBy2, "covers1" : $blnCovers1, "covers2" : $blnCovers2, "coveredby1" : $blnCoveredBy1, "coveredby2" : $blnCoveredBy2, "ends1" : $blnEnds1, "ends2" : $blnEnds2, "endedby1" : $blnEndedBy1, "endedby2" : $blnEndedBy2, "null1": $null1, "null2": $null2, "null3": $null3 }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/time_functions/time_functions.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/time_functions/time_functions.3.query.aql
index 86a4a72..d2befcc 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/time_functions/time_functions.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/time_functions/time_functions.3.query.aql
@@ -4,10 +4,10 @@
let $t1 := time-from-unix-time-in-ms(1560074)
let $null1 := time-from-unix-time-in-ms(null)
let $dt1 := datetime("1327-12-02T23:35:49.938Z")
-let $t2 := time-from-datetime($dt1)
-let $null2 := time-from-datetime(null)
+let $t2 := get-time-from-datetime($dt1)
+let $null2 := get-time-from-datetime(null)
let $dt2 := datetime("2012-10-11T02:30:23+03:00")
-let $t3 := time-from-datetime($dt2)
+let $t3 := get-time-from-datetime($dt2)
let $dr1 := duration("-PT30H")
let $t4 := add-time-duration($t1, $dr1)
let $null3 := add-time-duration(null, $dr1)
diff --git a/asterix-app/src/test/resources/runtimets/queries/tpch/q7_volume_shipping/q7_volume_shipping.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/tpch/q7_volume_shipping/q7_volume_shipping.3.query.aql
index 58515b8..843204a 100644
--- a/asterix-app/src/test/resources/runtimets/queries/tpch/q7_volume_shipping/q7_volume_shipping.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/tpch/q7_volume_shipping/q7_volume_shipping.3.query.aql
@@ -57,7 +57,7 @@
for $t in q7_volume_shipping_tmp()
where
$locs.c_nationkey = $t.c_nationkey and $locs.s_nationkey = $t.s_nationkey
-let $l_year0 := year($locs.l_shipdate)
+let $l_year0 := get-year($locs.l_shipdate)
group by $supp_nation := $t.supp_nation, $cust_nation := $t.cust_nation, $l_year := $l_year0
with $locs
let $revenue := sum(for $i in $locs return $i.l_extendedprice * (1 - $i.l_discount))
diff --git a/asterix-app/src/test/resources/runtimets/queries/tpch/q8_national_market_share/q8_national_market_share.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/tpch/q8_national_market_share/q8_national_market_share.3.query.aql
index 7d3dd00..cac1248 100644
--- a/asterix-app/src/test/resources/runtimets/queries/tpch/q8_national_market_share/q8_national_market_share.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/tpch/q8_national_market_share/q8_national_market_share.3.query.aql
@@ -56,7 +56,7 @@
for $n2 in dataset('Nation')
where $slnrcop.s_nationkey = $n2.n_nationkey
-let $o_year := year($slnrcop.o_orderdate)
+let $o_year := get-year($slnrcop.o_orderdate)
return {
"year": $o_year,
"revenue": $slnrcop.l_extendedprice *(1-$slnrcop.l_discount),
diff --git a/asterix-app/src/test/resources/runtimets/queries/tpch/q9_product_type_profit_nt/q9_product_type_profit_nt.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/tpch/q9_product_type_profit_nt/q9_product_type_profit_nt.3.query.aql
index bd6457c..2e54083 100644
--- a/asterix-app/src/test/resources/runtimets/queries/tpch/q9_product_type_profit_nt/q9_product_type_profit_nt.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/tpch/q9_product_type_profit_nt/q9_product_type_profit_nt.3.query.aql
@@ -28,7 +28,7 @@
"l_orderkey": $l2.l_orderkey, "n_name": $l2.n_name, "ps_supplycost": $l2.ps_supplycost } )
where $o.o_orderkey = $l3.l_orderkey
let $amount := $l3.l_extendedprice * (1 - $l3.l_discount) - $l3.ps_supplycost * $l3.l_quantity
- let $o_year := year($o.o_orderdate)
+ let $o_year := get-year($o.o_orderdate)
return
{ "nation": $l3.n_name, "o_year": $o_year, "amount": $amount } )
group by $nation := $profit.nation, $o_year := $profit.o_year with $profit
diff --git a/asterix-common/src/main/java/edu/uci/ics/asterix/common/context/DatasetLifecycleManager.java b/asterix-common/src/main/java/edu/uci/ics/asterix/common/context/DatasetLifecycleManager.java
index 9cd8879..1931188 100644
--- a/asterix-common/src/main/java/edu/uci/ics/asterix/common/context/DatasetLifecycleManager.java
+++ b/asterix-common/src/main/java/edu/uci/ics/asterix/common/context/DatasetLifecycleManager.java
@@ -342,6 +342,20 @@
@Override
public void stop(boolean dumpState, OutputStream outputStream) throws IOException {
+ if (dumpState) {
+ dumpState(outputStream);
+ }
+
+ List<IIndex> openIndexes = getOpenIndexes();
+ for (IIndex index : openIndexes) {
+ index.deactivate();
+ }
+ datasetVirtualBufferCaches.clear();
+ datasetOpTrackers.clear();
+ datasetInfos.clear();
+ }
+
+ private void dumpState(OutputStream outputStream) throws IOException {
StringBuilder sb = new StringBuilder();
sb.append(String.format("Memory budget = %d\n", capacity));
diff --git a/asterix-common/src/main/java/edu/uci/ics/asterix/common/transactions/IAsterixAppRuntimeContextProvider.java b/asterix-common/src/main/java/edu/uci/ics/asterix/common/transactions/IAsterixAppRuntimeContextProvider.java
index d964b72..05ac025 100644
--- a/asterix-common/src/main/java/edu/uci/ics/asterix/common/transactions/IAsterixAppRuntimeContextProvider.java
+++ b/asterix-common/src/main/java/edu/uci/ics/asterix/common/transactions/IAsterixAppRuntimeContextProvider.java
@@ -42,7 +42,7 @@
public ILSMOperationTracker getLSMBTreeOperationTracker(int datasetID);
- public ILSMIOOperationCallbackProvider getLSMBTreeIOOperationCallbackProvider();
+ public ILSMIOOperationCallbackProvider getLSMBTreeIOOperationCallbackProvider(boolean isPrimary);
public ILSMIOOperationCallbackProvider getLSMRTreeIOOperationCallbackProvider();
diff --git a/asterix-external-data/.gitignore b/asterix-external-data/.gitignore
new file mode 100644
index 0000000..ea8c4bf
--- /dev/null
+++ b/asterix-external-data/.gitignore
@@ -0,0 +1 @@
+/target
diff --git a/asterix-installer/ittest/asterix-lifecycle_backupRestore.adm b/asterix-installer/ittest/asterix-lifecycle_backupRestore.adm
new file mode 100644
index 0000000..b74416d
--- /dev/null
+++ b/asterix-installer/ittest/asterix-lifecycle_backupRestore.adm
@@ -0,0 +1 @@
+{ "DataverseName": "backupDataverse", "DataFormat": "edu.uci.ics.asterix.runtime.formats.NonTaggedDataFormat", "Timestamp": "Thu Jun 06 10:29:23 PDT 2013", "PendingOp": 0 }
diff --git a/asterix-metadata/.gitignore b/asterix-metadata/.gitignore
new file mode 100644
index 0000000..ea8c4bf
--- /dev/null
+++ b/asterix-metadata/.gitignore
@@ -0,0 +1 @@
+/target
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/functions/AsterixBuiltinFunctions.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/functions/AsterixBuiltinFunctions.java
index 0b6136c..4728f162 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/functions/AsterixBuiltinFunctions.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/functions/AsterixBuiltinFunctions.java
@@ -194,17 +194,17 @@
public final static FunctionIdentifier CARET = new FunctionIdentifier(FunctionConstants.ASTERIX_NS, "caret", 2);
public final static FunctionIdentifier NUMERIC_ABS = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "numeric-abs", 1);
+ "abs", 1);
public final static FunctionIdentifier NUMERIC_CEILING = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "numeric-ceiling", 1);
+ "ceiling", 1);
public final static FunctionIdentifier NUMERIC_FLOOR = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "numeric-floor", 1);
+ "floor", 1);
public final static FunctionIdentifier NUMERIC_ROUND = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "numeric-round", 1);
+ "round", 1);
public final static FunctionIdentifier NUMERIC_ROUND_HALF_TO_EVEN = new FunctionIdentifier(
- FunctionConstants.ASTERIX_NS, "numeric-round-half-to-even", 1);
+ FunctionConstants.ASTERIX_NS, "round-half-to-even", 1);
public final static FunctionIdentifier NUMERIC_ROUND_HALF_TO_EVEN2 = new FunctionIdentifier(
- FunctionConstants.ASTERIX_NS, "numeric-round-half-to-even", 2);
+ FunctionConstants.ASTERIX_NS, "round-half-to-even", 2);
// String funcitons
public final static FunctionIdentifier STRING_EQUAL = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
"string-equal", 2);
@@ -423,7 +423,7 @@
"interval-overlaps", 2);
public final static FunctionIdentifier INTERVAL_OVERLAPPED_BY = new FunctionIdentifier(
FunctionConstants.ASTERIX_NS, "interval-overlapped-by", 2);
- public final static FunctionIdentifier OVERLAP = new FunctionIdentifier(FunctionConstants.ASTERIX_NS, "overlap", 2);
+ public final static FunctionIdentifier OVERLAP = new FunctionIdentifier(FunctionConstants.ASTERIX_NS, "interval-overlapping", 2);
public final static FunctionIdentifier INTERVAL_STARTS = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
"interval-starts", 2);
public final static FunctionIdentifier INTERVAL_STARTED_BY = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
@@ -500,19 +500,19 @@
// Spatial and temporal type accessors
public static final FunctionIdentifier ACCESSOR_TEMPORAL_YEAR = new FunctionIdentifier(
- FunctionConstants.ASTERIX_NS, "year", 1);
+ FunctionConstants.ASTERIX_NS, "get-year", 1);
public static final FunctionIdentifier ACCESSOR_TEMPORAL_MONTH = new FunctionIdentifier(
- FunctionConstants.ASTERIX_NS, "month", 1);
+ FunctionConstants.ASTERIX_NS, "get-month", 1);
public static final FunctionIdentifier ACCESSOR_TEMPORAL_DAY = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "day", 1);
+ "get-day", 1);
public static final FunctionIdentifier ACCESSOR_TEMPORAL_HOUR = new FunctionIdentifier(
- FunctionConstants.ASTERIX_NS, "hour", 1);
+ FunctionConstants.ASTERIX_NS, "get-hour", 1);
public static final FunctionIdentifier ACCESSOR_TEMPORAL_MIN = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "minute", 1);
+ "get-minute", 1);
public static final FunctionIdentifier ACCESSOR_TEMPORAL_SEC = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "second", 1);
+ "get-second", 1);
public static final FunctionIdentifier ACCESSOR_TEMPORAL_MILLISEC = new FunctionIdentifier(
- FunctionConstants.ASTERIX_NS, "millisecond", 1);
+ FunctionConstants.ASTERIX_NS, "get-millisecond", 1);
public static final FunctionIdentifier ACCESSOR_TEMPORAL_INTERVAL_START = new FunctionIdentifier(
FunctionConstants.ASTERIX_NS, "get-interval-start", 1);
public static final FunctionIdentifier ACCESSOR_TEMPORAL_INTERVAL_END = new FunctionIdentifier(
@@ -522,7 +522,7 @@
public static final FunctionIdentifier DATE_FROM_UNIX_TIME_IN_DAYS = new FunctionIdentifier(
FunctionConstants.ASTERIX_NS, "date-from-unix-time-in-days", 1);
public static final FunctionIdentifier DATE_FROM_DATETIME = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "date-from-datetime", 1);
+ "get-date-from-datetime", 1);
public final static FunctionIdentifier ADD_DATE_DURATION = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
"add-date-duration", 2);
public final static FunctionIdentifier SUBTRACT_DATE = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
@@ -530,7 +530,7 @@
public final static FunctionIdentifier TIME_FROM_UNIX_TIME_IN_MS = new FunctionIdentifier(
FunctionConstants.ASTERIX_NS, "time-from-unix-time-in-ms", 1);
public final static FunctionIdentifier TIME_FROM_DATETIME = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
- "time-from-datetime", 1);
+ "get-time-from-datetime", 1);
public final static FunctionIdentifier SUBTRACT_TIME = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
"subtract-time", 2);
public final static FunctionIdentifier ADD_TIME_DURATION = new FunctionIdentifier(FunctionConstants.ASTERIX_NS,
diff --git a/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/aggregates/std/MinMaxAggregateFunction.java b/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/aggregates/std/MinMaxAggregateFunction.java
index 95aba92..8599913 100644
--- a/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/aggregates/std/MinMaxAggregateFunction.java
+++ b/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/aggregates/std/MinMaxAggregateFunction.java
@@ -85,6 +85,17 @@
throw new AlgebricksException("Unexpected type " + typeTag + " in aggregation input stream. Expected type "
+ aggType + ".");
} else {
+
+ // If a system_null is encountered locally, it would be an error; otherwise if it is seen
+ // by a global aggregator, it is simple ignored.
+ if (typeTag == ATypeTag.SYSTEM_NULL) {
+ if (isLocalAgg) {
+ throw new AlgebricksException("Type SYSTEM_NULL encountered in local aggregate.");
+ } else {
+ return;
+ }
+ }
+
if (ATypeHierarchy.canPromote(aggType, typeTag)) {
tpc = ATypeHierarchy.getTypePromoteComputer(aggType, typeTag);
aggType = typeTag;
@@ -93,8 +104,8 @@
if (tpc != null) {
tempValForCasting.reset();
try {
- tpc.promote(outputVal.getByteArray(), outputVal.getStartOffset() + 1, outputVal.getLength() - 1,
- tempValForCasting);
+ tpc.promote(outputVal.getByteArray(), outputVal.getStartOffset() + 1,
+ outputVal.getLength() - 1, tempValForCasting);
} catch (IOException e) {
throw new AlgebricksException(e);
}
diff --git a/asterix-tools/.gitignore b/asterix-tools/.gitignore
new file mode 100644
index 0000000..ea8c4bf
--- /dev/null
+++ b/asterix-tools/.gitignore
@@ -0,0 +1 @@
+/target
diff --git a/asterix-transactions/src/main/java/edu/uci/ics/asterix/transaction/management/resource/LSMBTreeLocalResourceMetadata.java b/asterix-transactions/src/main/java/edu/uci/ics/asterix/transaction/management/resource/LSMBTreeLocalResourceMetadata.java
index d37da43..d42c6a0 100644
--- a/asterix-transactions/src/main/java/edu/uci/ics/asterix/transaction/management/resource/LSMBTreeLocalResourceMetadata.java
+++ b/asterix-transactions/src/main/java/edu/uci/ics/asterix/transaction/management/resource/LSMBTreeLocalResourceMetadata.java
@@ -70,8 +70,8 @@
runtimeContextProvider.getLSMMergePolicy(),
isPrimary ? runtimeContextProvider.getLSMBTreeOperationTracker(datasetID) : new BaseOperationTracker(
LSMBTreeIOOperationCallbackFactory.INSTANCE), runtimeContextProvider.getLSMIOScheduler(),
- runtimeContextProvider.getLSMBTreeIOOperationCallbackProvider(), fileSplits == null ? ioDeviceID
- : fileSplits[partition].getIODeviceId());
+ runtimeContextProvider.getLSMBTreeIOOperationCallbackProvider(isPrimary),
+ fileSplits == null ? ioDeviceID : fileSplits[partition].getIODeviceId());
return lsmBTree;
}