diff --git a/services/web/app/coffee/Features/Compile/ClsiManager.coffee b/services/web/app/coffee/Features/Compile/ClsiManager.coffee index a5402e0546..7474341e64 100755 --- a/services/web/app/coffee/Features/Compile/ClsiManager.coffee +++ b/services/web/app/coffee/Features/Compile/ClsiManager.coffee @@ -129,10 +129,15 @@ module.exports = ClsiManager = timer = new Metrics.Timer("editor.compile-getdocs-redis") ClsiManager.getContentFromDocUpdaterIfMatch project_id, project, options, (error, projectStateHash, docUpdaterDocs) -> timer.done() - return callback(error) if error? - logger.log project_id: project_id, projectStateHash: projectStateHash, docs: docUpdaterDocs?, "checked project state" + if error? + logger.error err: error, project_id: project_id, "error checking project state" + # note: we don't bail out when there's an error getting + # incremental files from the docupdater, we just fall back + # to a normal compile below + else + logger.log project_id: project_id, projectStateHash: projectStateHash, docs: docUpdaterDocs?, "checked project state" # see if we can send an incremental update to the CLSI - if docUpdaterDocs? and options.syncType isnt "full" + if docUpdaterDocs? and (options.syncType isnt "full") and not error? # Workaround: for now, always flush project to mongo on compile # until we have automatic periodic flushing on the docupdater # side, to prevent documents staying in redis too long. diff --git a/services/web/public/coffee/ide/pdf/controllers/PdfController.coffee b/services/web/public/coffee/ide/pdf/controllers/PdfController.coffee index 42c1cd1bc8..d06d5822a4 100644 --- a/services/web/public/coffee/ide/pdf/controllers/PdfController.coffee +++ b/services/web/public/coffee/ide/pdf/controllers/PdfController.coffee @@ -105,7 +105,9 @@ define [ rootDoc_id: options.rootDocOverride_id or null draft: $scope.draft check: checkType - incrementalCompilesEnabled: window.user?.betaProgram + # use incremental compile for beta users but revert to a full + # compile if there is a server error + incrementalCompilesEnabled: window.user?.betaProgram and not $scope.pdf.error _csrf: window.csrfToken }, {params: params}