|
@@ -52,9 +52,14 @@ module.exports = DocArchiveManager =
|
|
|
else if !docs?
|
|
else if !docs?
|
|
|
return callback new Error("No docs for project #{project_id}")
|
|
return callback new Error("No docs for project #{project_id}")
|
|
|
jobs = _.map docs, (doc) ->
|
|
jobs = _.map docs, (doc) ->
|
|
|
- (cb)-> DocArchiveManager.unArchiveDocChanges project_id, doc._id, cb
|
|
|
|
|
|
|
+ (cb)-> DocArchiveManager.unArchiveDocChangesWithLock project_id, doc._id, cb
|
|
|
async.parallelLimit jobs, 4, callback
|
|
async.parallelLimit jobs, 4, callback
|
|
|
|
|
|
|
|
|
|
+ unArchiveDocChangesWithLock: (project_id, doc_id, callback = (error) ->) ->
|
|
|
|
|
+ job = (releaseLock) ->
|
|
|
|
|
+ DocArchiveManager.unArchiveDocChanges project_id, doc_id, releaseLock
|
|
|
|
|
+ LockManager.runWithLock("HistoryLock:#{doc_id}", job, callback)
|
|
|
|
|
+
|
|
|
unArchiveDocChanges: (project_id, doc_id, callback)->
|
|
unArchiveDocChanges: (project_id, doc_id, callback)->
|
|
|
MongoManager.getArchivedDocChanges doc_id, (error, count) ->
|
|
MongoManager.getArchivedDocChanges doc_id, (error, count) ->
|
|
|
return callback(error) if error?
|
|
return callback(error) if error?
|