Correctly count project_ops_length

This commit is contained in:
Michael Walker
2018-01-26 14:41:10 +00:00
parent 3028fb9c3d
commit d2865f0650
@@ -106,25 +106,34 @@ module.exports = ProjectManager =
timer.done()
_callback(args...)
project_ops_length = 0
handleDocUpdate = (update, cb) ->
doc_id = update.id
if update.docLines?
RedisManager.addEntity project_id, 'doc', doc_id, user_id, update, cb
RedisManager.addEntity project_id, 'doc', doc_id, user_id, update, (error, count) =>
project_ops_length = count
cb(error)
else
DocumentManager.renameDocWithLock project_id, doc_id, user_id, update, cb
DocumentManager.renameDocWithLock project_id, doc_id, user_id, update, (error, count) =>
project_ops_length = count
cb(error)
handleFileUpdate = (update, cb) ->
file_id = update.id
if update.url?
RedisManager.addEntity project_id, 'file', file_id, user_id, update, cb
RedisManager.addEntity project_id, 'file', file_id, user_id, update, (error, count) =>
project_ops_length = count
cb(error)
else
RedisManager.renameFile project_id, file_id, user_id, update, cb
RedisManager.renameFile project_id, file_id, user_id, update, (error, count) =>
project_ops_length = count
cb(error)
async.each docUpdates, handleDocUpdate, (error) ->
return callback(error) if error?
async.each fileUpdates, handleFileUpdate, (error, project_ops_length) ->
async.each fileUpdates, handleFileUpdate, (error) ->
return callback(error) if error?
if HistoryManager.shouldFlushHistoryOps(project_ops_length, docUpdates.length + fileUpdates.length, HistoryManager.FLUSH_PROJECT_EVERY_N_OPS)
logger.log { project_ops_length, project_id }, "flushing project history api"
HistoryManager.flushProjectChangesAsync project_id
callback()