fix update to work with redis cluster

the items do not have the same tag, so we must delete the entry from the
docsWithHistoryOps set outside the multi.
This commit is contained in:
Brian Gough 2017-04-26 16:25:34 +01:00
parent 7836556d10
commit 3b5a07d530

View file

@ -21,12 +21,13 @@ module.exports = RedisManager =
# Delete all the updates which have been applied (exact match)
for update in docUpdates or []
multi.lrem Keys.uncompressedHistoryOps({doc_id}), 0, update
# It's ok to delete the doc_id from the set here. Even though the list
# of updates may not be empty, we will continue to process it until it is.
multi.srem Keys.docsWithHistoryOps({project_id}), doc_id
multi.exec (error, results) ->
return callback(error) if error?
callback null
# It's ok to delete the doc_id from the set here. Even though the list
# of updates may not be empty, we will continue to process it until it is.
rclient.srem Keys.docsWithHistoryOps({project_id}), doc_id, (error) ->
return callback(error) if error?
callback null
getDocIdsWithHistoryOps: (project_id, callback = (error, doc_ids) ->) ->
rclient.smembers Keys.docsWithHistoryOps({project_id}), callback