Hey Daniel,
'Partial' puts are not possible, a 'put' fully overwrites the previous entity.
You can read about how the datastore works in some of the articles.
Basically entities are serialized (using protocol buffers) and stored
in a single column.
http://code.google.com/appengine/articles/storage_breakdown.html
Robert
On Sat, Feb 19, 2011 at 14:32, Daniel <[email protected]> wrote:
>
> I have a model that holds a bunch of game data:
> class MyGame(db.Expando):
> sender=db.StringProperty()
> senderScore=db.IntegerProperty(default=0)
> senderChatWaiting=db.BooleanProperty(default=False)
> senderResigned=db.BooleanProperty(default=False)
> senderHideGame=db.BooleanProperty(default=False)
> recipient=db.StringProperty()
> recipientAccepted=db.BooleanProperty(default=False)
> recipientScore=db.IntegerProperty(default=0)
> recipientChatWaiting=db.BooleanProperty(default=False)
> recipientResigned=db.BooleanProperty(default=False)
> recipientHideGame=db.BooleanProperty(default=False)
>
> bucket=db.TextProperty()
> board=db.TextProperty()
> currentPlayer=db.IntegerProperty(default=0)
> whosTurn=db.StringProperty()
> whosWaiting=db.StringProperty()
> moveID=db.IntegerProperty(default=1)
>
> lastPlayed=db.StringProperty()
> lastPointsRecieved=db.IntegerProperty(default=0)
>
> chatLog=db.StringListProperty()
> created=db.DateTimeProperty(auto_now_add=True)
> lastUpdate=db.DateTimeProperty(auto_now_add=True)
> gameFinished=db.BooleanProperty(default=False)
> gameResigned=db.BooleanProperty(default=False)
>
> I have a single method that updates all of these values for a particular
> existing game record and does a single .put() at the end to save it. Is it
> possible that only some of the items are updated and not others.. a partial
> put()? I was assuming that a put() would either succeed or fail, but not
> partially succeed.
> I'm trying to track down a bug in my app and curious if it's possible I have
> a partial write.. if not the bug is probably elsewhere in my server code or
> client.
> Thanks
> Daniel
>
> --
> 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.
>
--
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.