I handle a class MyClass that holds a list property myListProperty. I use the low-level API to query over this class, with a dynamic number of filters over this very single field. Those filters mainly use different kind of operators (inequality filters and "in" filters).
Sample code: Query q = new Query("MyClass"); q.addFilter("myListProperty", FilterOperator.IN, oneCollection); q.addFilter("myListProperty", FilterOperator.IN, anotherCollection); q.addFilter("myListProperty", FilterOperator.GREATER_THAN, oneString); q.addFilter("myListProperty", FilterOperator.LESS_THAN, anotherString); When executing this query in dev mode, it generates the following index in "datastore-indexes-auto.xml": <!-- Used 15 times in query history --> <datastore-index kind="MyClass" ancestor="false" source="auto"> <property name="myListProperty" direction="asc"/> <property name="myListProperty" direction="asc"/> <property name="myListProperty" direction="asc"/> </datastore-index> You got it : this would generate a mega-exploding index problem when in productionÅ Can someone confirm that this kind of index is NOT REQUIRED when executing that query on the actual datastore ? -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.