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.

Reply via email to