I have created a graph schema(DSE 6.7), a search index, inserted graph data into it.
schema.propertyKey("geoBoundary").Text().single().create() schema.propertyKey("location").Point().withGeoBounds().single().create() schema.vertexLabel("region").partitionKey("regionId").properties("name", "location", "geoBoundary").create() schema.vertexLabel("region").index("search").search().by("geoBoundary").by("location").add() graph.addVertex(label,'region', 'regionId','0ab79c08-ef37-11e9-a713-2a2ae2dbcce8','location',Geo.point(149.0124,35.4735),'name','Dummy_ACT','geoBoundary',"MULTIPOLYGON (((-122.756762 49.000239, -117.033359 49.000239)), ((-122.718423 48.310145, -122.586977 48.35396, -122.608885 48.151313, -122.767716 48.227991, -122.718423 48.310145)), ((-123.025132 48.583992, -122.915593 48.715438, -122.767716 48.556607, -122.811531 48.419683, -123.041563 48.458022, -123.025132 48.583992)))"); SELECT name FROM test.region_p where solr_query='{"q":"*:*","fq":"geoBoundary:\"Intersects(MULTIPOLYGON (((-122.718423 48.310145))))\""}'; OR SELECT name FROM test.region_p where solr_query='{"q":"*:*"}';
Both throws this error,
Search queries are not allowed when the document unique key does not match the CQL primary key unless the query is a count or the selected columns are a subset of the unique key.
I am unable to query MULTIPOLYGONS using Gremlin because, graph only supports Point, Linestring and Polygon datatypes. My data contains MULTIPOLYGONS too. So this eliminates the use to Gremlin. So my question here is, without changing the graph schema and data , can i run CQL query with the solr_query parameter?