diff options
author | Elrond <elrond+mediagoblin.org@samba-tng.org> | 2012-01-29 20:56:51 +0100 |
---|---|---|
committer | Elrond <elrond+mediagoblin.org@samba-tng.org> | 2012-03-04 20:58:19 +0100 |
commit | 82cd968347988f61ac52c2100d1dc47750decead (patch) | |
tree | 7466d3b3b7d9ebda568c3ad4eeb8ed92d4215efb /mediagoblin/db/mongo/util.py | |
parent | b8e635b22f9647b173b9320ebb6539bdefe851d8 (diff) | |
download | mediagoblin-82cd968347988f61ac52c2100d1dc47750decead.tar.lz mediagoblin-82cd968347988f61ac52c2100d1dc47750decead.tar.xz mediagoblin-82cd968347988f61ac52c2100d1dc47750decead.zip |
Create atomic_update db utility function
In some cases (notably the mark_entry_failed function) it
is useful to have atomic update functionality on the db. On
mongo this requires special syntax.
So created an atomic_update function for mongo and started
to use it in mark_entry_failed.
Diffstat (limited to 'mediagoblin/db/mongo/util.py')
-rw-r--r-- | mediagoblin/db/mongo/util.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/mediagoblin/db/mongo/util.py b/mediagoblin/db/mongo/util.py index 4daf616a..89348d98 100644 --- a/mediagoblin/db/mongo/util.py +++ b/mediagoblin/db/mongo/util.py @@ -290,3 +290,14 @@ class MigrationManager(object): self.set_current_migration(migration_number) if post_callback: post_callback(migration_number, migration_func) + + +########################## +# Random utility functions +########################## + + +def atomic_update(table, query_dict, update_values): + table.collection.update( + query_dict, + {"$set": update_values}) |