diff options
Diffstat (limited to 'mediagoblin/db')
-rw-r--r-- | mediagoblin/db/mongo/util.py | 11 | ||||
-rw-r--r-- | mediagoblin/db/util.py | 3 |
2 files changed, 13 insertions, 1 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}) diff --git a/mediagoblin/db/util.py b/mediagoblin/db/util.py index 1fc949a6..c48c4ba6 100644 --- a/mediagoblin/db/util.py +++ b/mediagoblin/db/util.py @@ -22,4 +22,5 @@ except ImportError: if use_sql: from mediagoblin.db.sql.fake import ObjectId, InvalidId, DESCENDING else: - from mediagoblin.db.mongo.util import ObjectId, InvalidId, DESCENDING + from mediagoblin.db.mongo.util import \ + ObjectId, InvalidId, DESCENDING, atomic_update |