1
votes

When using the Google App Engine NDB datastore does altering and putting one property of an entity affect the whole thing?

For example I have a video entity:

class Video(ndb.Model):
    title = ndb.StringProperty(required = True)
    category = ndb.StringProperty(required = True)

    original_video_ref = ndb.BlobKeyProperty()
    webm_video_ref = ndb.BlobKeyProperty()
    mp4_video_ref = ndb.BlobKeyProperty()

And I let the user edit the title and category whenever they want and I put out a process on the Task Queue to take the original video and return it to me in webm and mp4 formats. This process takes a variable amount of time but can occur right when the user is editing it, and likely will, so I was wondering if I can have two, nearly simultaneous, puts on different properties of an entity without interfering with each other or needing to use transactions.

1

1 Answers

2
votes

No.

A put is for the entire entity. There is no partial update.