Hi,

I just try out the SpatialQueryExample and don't want to us annotations for the MapPoint class, but I have trouble to get the index to work.

Here is what I see:

CacheConfiguration<Integer, MapPoint> cc = new CacheConfiguration<>(CACHE_NAME);

SQL:  "explain analyze select _val from MapPoint where coords && ?"

With Annotiations:

cc.setIndexedTypes(Integer.class,MapPoint.class);

I got:

[[SELECT
    _VAL AS __C0
FROM "SpatialQueryExample".MAPPOINT
    /* "SpatialQueryExample"."coords_idx": COORDS && ?1 */
WHERE INTERSECTS(COORDS, ?1)], [SELECT
    __C0 AS _VAL
FROM PUBLIC.__T0
    /* "SpatialQueryExample"."merge_scan" */]]


With QueryEntity:

QueryEntity queryEntity = new QueryEntity(Integer.class.getName(), MapPoint.class.getName());
LinkedHashMap<String, String> fields = new LinkedHashMap<>();
fields.put("coords", Geometry.class.getName());
queryEntity.setFields(fields);
queryEntity.setIndexes(Arrays.asList(new QueryIndex("coords")));
cc.setQueryEntities(Arrays.asList(queryEntity));

I got:

[[SELECT
    _VAL AS __C0
FROM "SpatialQueryExample".MAPPOINT
    /* "SpatialQueryExample".MAPPOINT.__SCAN_ */
WHERE INTERSECTS(COORDS, ?1)], [SELECT
    __C0 AS _VAL
FROM PUBLIC.__T0
    /* "SpatialQueryExample"."merge_scan" */]]


The index won't be used in the QueryEntity configuration.

Do I do something wrong? Or do you have any suggestions?

Thank you!

Ciao,

Rafael

--
Rafael Troilo, Dipl.-Inform. (FH)
   GIScience Research Group
Heidelberg Institute for Geoinformation Technology

   [email protected]
   http://giscience.uni-hd.de
   http://www.geog.uni-heidelberg.de/gis/heigit.html
Berliner Str. 45 (Mathematikon), D-69120 Heidelberg, Germany
   fon: +49(0)6221 / 54 / 19704

Reply via email to