mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-25 18:20:09 +02:00
handle easier propagation
This commit is contained in:
@@ -48,6 +48,7 @@ module.exports = MongoManager =
|
||||
|
||||
|
||||
insertCompressedUpdate: (project_id, doc_id, update, temporary, callback = (error) ->) ->
|
||||
inS3 = update.inS3?
|
||||
update = {
|
||||
doc_id: ObjectId(doc_id.toString())
|
||||
project_id: ObjectId(project_id.toString())
|
||||
@@ -55,6 +56,8 @@ module.exports = MongoManager =
|
||||
meta: update.meta
|
||||
v: update.v
|
||||
}
|
||||
if inS3
|
||||
update.inS3 = true
|
||||
|
||||
if temporary
|
||||
seconds = 1000
|
||||
@@ -135,13 +138,6 @@ module.exports = MongoManager =
|
||||
getArchivedDocChanges: (doc_id, callback)->
|
||||
db.docHistory.count { doc_id: ObjectId(doc_id.toString()) , inS3: true }, {}, callback
|
||||
|
||||
remarkDocHistoryAsArchived: (doc_id, callback)->
|
||||
logger.log doc_id: doc_id, "remarkDocHistoryAsArchived"
|
||||
MongoManager.getLastCompressedUpdate doc_id, (error, update) ->
|
||||
db.docHistory.update { _id: update._id }, { $set : { inS3 : true } }, (error)->
|
||||
return callback(error) if error?
|
||||
callback(error)
|
||||
|
||||
markDocHistoryAsArchived: (doc_id, update, callback)->
|
||||
db.docHistory.update { _id: update._id }, { $set : { inS3 : true } }, (error)->
|
||||
return callback(error) if error?
|
||||
|
||||
@@ -7,6 +7,7 @@ UpdateTrimmer = require "./UpdateTrimmer"
|
||||
logger = require "logger-sharelatex"
|
||||
async = require "async"
|
||||
DocArchiveManager = require "./DocArchiveManager"
|
||||
_ = require "underscore"
|
||||
|
||||
module.exports = UpdatesManager =
|
||||
compressAndSaveRawUpdates: (project_id, doc_id, rawUpdates, temporary, callback = (error) ->) ->
|
||||
@@ -33,13 +34,13 @@ module.exports = UpdatesManager =
|
||||
return
|
||||
|
||||
compressedUpdates = UpdateCompressor.compressRawUpdates lastCompressedUpdate, rawUpdates
|
||||
if lastCompressedUpdate?.inS3? and not _.some(compressedUpdates, (update) -> update.inS3)
|
||||
compressedUpdates[compressedUpdates.length-1].inS3 = lastCompressedUpdate.inS3
|
||||
|
||||
MongoManager.insertCompressedUpdates project_id, doc_id, compressedUpdates, temporary,(error) ->
|
||||
return callback(error) if error?
|
||||
logger.log project_id: project_id, doc_id: doc_id, rawUpdatesLength: length, compressedUpdatesLength: compressedUpdates.length, "compressed doc updates"
|
||||
if lastCompressedUpdate?.inS3?
|
||||
MongoManager.remarkDocHistoryAsArchived doc_id, callback
|
||||
else
|
||||
callback()
|
||||
callback()
|
||||
|
||||
REDIS_READ_BATCH_SIZE: 100
|
||||
processUncompressedUpdates: (project_id, doc_id, callback = (error) ->) ->
|
||||
|
||||
Reference in New Issue
Block a user