Hi Jeff, X is a StringListProperty, and it's indexed on multiple times. The number of index entries generated for multiple instances of the same list property is n!/(n-m)!, where n is the number of elements in the list, and m is the number of repeats in the index.
-Nick Johnson On Tue, Oct 12, 2010 at 4:18 PM, Jeff Schwartz <[email protected]>wrote: > Hi Nick. It doesn't appear from the orignal poster's example that even if > he had 5000 entries (the max) in his list property that that would cause an > exploding index. Can you elaborate. > > > > On Tue, Oct 12, 2010 at 10:59 AM, Nick Johnson (Google) < > [email protected]> wrote: > >> Hi Eric, >> >> This is a classic 'exploding' index. With 10 elements in the list, this >> index will try to generate 10*9*8*7*6 = 30,240 index entries - far above the >> limit. It's not possible to build this index. Consider restructuring your >> data, or using merge join queries. >> >> -Nick Johnson >> >> >> On Tue, Oct 12, 2010 at 3:37 PM, Eric Ka Ka Ng <[email protected]> wrote: >> >>> I would like to build an index for the following entity >>> >>> Class entityA (db.Model): >>> X db.StringListProperty() >>> Y db.IntegerProperty() >>> Z db.IntegerProperty() >>> >>> >>> >>> in index.yaml >>> >>> - kind: entityA >>> >>> properties: >>> >>> - name: Y >>> >>> - name: X >>> >>> - name: X >>> >>> - name: X >>> >>> - name: X >>> >>> - name: X >>> >>> - name: Z >>> >>> direction: desc >>> >>> >>> >>> but the index cannot be built and is always resulted in Error State >>> >>> >>> Thx now we can vaccum the 'error' index now without being stuck in the >>> "building" state and have to send emails to G to ask to mark the index as >>> 'Error' >>> >>> >>> But I have tried several times to vaccum the index, then re-build, but >>> always fail >>> >>> >>> >>> May i know why it keeps in failing? The StringList property X usually >>> contains 5-10 strings. >>> >>> >>> Best Regards, >>> >>> Eric >>> >>> -- >>> You received this message because you are subscribed to the Google Groups >>> "Google App Engine" group. >>> To post to this group, send email to [email protected]. >>> To unsubscribe from this group, send email to >>> [email protected]<google-appengine%[email protected]> >>> . >>> For more options, visit this group at >>> http://groups.google.com/group/google-appengine?hl=en. >>> >> >> >> >> -- >> Nick Johnson, Developer Programs Engineer, App Engine Google Ireland Ltd. >> :: Registered in Dublin, Ireland, Registration Number: 368047 >> Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: >> 368047 >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Google App Engine" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]<google-appengine%[email protected]> >> . >> For more options, visit this group at >> http://groups.google.com/group/google-appengine?hl=en. >> > > > > -- > Jeff > > -- > You received this message because you are subscribed to the Google Groups > "Google App Engine" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<google-appengine%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/google-appengine?hl=en. > -- Nick Johnson, Developer Programs Engineer, App Engine Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
