Ok. Figured it out. This is a cautionary tale. If you are using your own version of SearchableModel beware the updates. You can miss something. ;) I didn't have this line (from 146 in SearchableModel) self._Entity__unindexed_properties = frozenset (kind_or_entity.unindexed_properties()) This was added May 8th in r56 of the file.
I'm going to find a better way of having a modified SearchableModel because I bump my head on this every time there is a change upstream. On Jun 17, 4:42 am, "Nick Johnson (Google)" <nick.john...@google.com> wrote: > Hi Josh, > > Can you please include your source code for the model that extends > SearchableModel, or otherwise provide a simple test case that demonstrates > the error? > > -Nick Johnson > > On Wed, Jun 17, 2009 at 9:18 AM, Josh Cronemeyer <joshuacroneme...@gmail.com > > > > > wrote: > > In my local dev environment I get the following stack trace when I try to > > create a record: > > > ERROR 2009-06-17 07:50:03,769 __init__.py:385] 'SearchableEntity' object > > has no attribute '_Entity__unindexed_properties' > > Traceback (most recent call last): > > File > > "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/webapp/__init__.py", > > line 503, in __call__ > > handler.post(*groups) > > File "/Users/admin/Workshop/shell_sink/server/shellsink.py", line 101, in > > post > > create_command_tags(sysadmin, command, tags) > > File "/Users/admin/Workshop/shell_sink/server/command_tag.py", line 58, > > in create_command_tags > > command.put() > > File > > "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/db/__init__.py", > > line 695, in put > > return datastore.Put(self._entity) > > File > > "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/datastore.py", > > line 155, in Put > > req.entity_list().extend([e._ToPb() for e in entities]) > > File "/Users/admin/Workshop/shell_sink/server/command_search.py", line > > 143, in _ToPb > > return super(SearchableEntity, self)._ToPb() > > File > > "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/datastore.py", > > line 513, in _ToPb > > name in self.__unindexed_properties): > > AttributeError: 'SearchableEntity' object has no attribute > > '_Entity__unindexed_properties' > > > Weird thing is that I don't see this in production. I'm not sure when this > > started happening, but my guess is the change over to 1.22 and I just now > > started noticing it. > > > My object extends SearchableModel. > > > The stack trace happens when I did a put() on an object that was already in > > the datastore and hadn't changed. > > > Handling the redundant put was my workaround, but I thought I would mention > > it here since it seems to be a difference between dev and prod. > > -- > Nick Johnson, App Engine Developer Programs Engineer > 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 google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~----------~----~----~----~------~----~------~--~---