Added support of typed indexes over open fields & indexes over nested fields
Open indexes requires user to provide a type along with a indexed field name.
This type would be enforced for all the indexed records, i.e. index cannot be created if in some records a field with provided name has a different type.
Index-specific rewrite rules match provided type with the inferred types of other arguments in join\select statements and trigger index rewrite.
Nested indexes use the same semantics as the regular indexes, with exception that field could be located arbitrarily deep inside nested structure
Change-Id: I53d00aba243ccf7cf79cf7d775dd305813d24f98
Reviewed-on: http://fulliautomatix.ics.uci.edu:8443/97
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Steven Jacobs <sjaco002@ucr.edu>
diff --git a/asterix-app/src/test/resources/optimizerts/queries/rtree-secondary-index-open.aql b/asterix-app/src/test/resources/optimizerts/queries/rtree-secondary-index-open.aql
index 14d31f0..7663ae6 100644
--- a/asterix-app/src/test/resources/optimizerts/queries/rtree-secondary-index-open.aql
+++ b/asterix-app/src/test/resources/optimizerts/queries/rtree-secondary-index-open.aql
@@ -2,7 +2,7 @@
create dataverse test;
use dataverse test;
-create type MyRecord as closed {
+create type MyRecord as open {
id: int32,
point: point,
kwds: string,
@@ -19,7 +19,7 @@
create dataset MyData(MyRecord)
primary key id on group1;
-load dataset MyData
+load dataset MyData
using "edu.uci.ics.asterix.external.dataset.adapter.NCFileSystemAdapter"
(("path"="nc1://data/spatial/spatialData.json"),("format"="adm")) pre-sorted;