From e61907bf485704cea27459b4c88e5b9c4ad133c7 Mon Sep 17 00:00:00 2001 From: Henry Oswald Date: Sun, 19 Aug 2018 11:38:27 +0100 Subject: [PATCH] added loads of debugging --- services/clsi/app/coffee/LockManager.coffee | 7 +++++-- .../clsi/app/coffee/ProjectPersistenceManager.coffee | 10 +++++++--- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/services/clsi/app/coffee/LockManager.coffee b/services/clsi/app/coffee/LockManager.coffee index 5d6fa4626d..2877d5f97d 100644 --- a/services/clsi/app/coffee/LockManager.coffee +++ b/services/clsi/app/coffee/LockManager.coffee @@ -2,7 +2,8 @@ Settings = require('settings-sharelatex') logger = require "logger-sharelatex" Lockfile = require('lockfile') # from https://github.com/npm/lockfile Errors = require "./Errors" - +fs = require("fs") +Path = require("path") module.exports = LockManager = LOCK_TEST_INTERVAL: 1000 # 50ms between each test of the lock MAX_LOCK_WAIT_TIME: 15000 # 10s maximum time to spend trying to get the lock @@ -15,7 +16,9 @@ module.exports = LockManager = stale: @LOCK_STALE Lockfile.lock path, lockOpts, (error) -> return callback new Errors.AlreadyCompilingError("compile in progress") if error?.code is 'EEXIST' - return callback(error) if error? + if error? + logger.err error:error, path:path, statLock:fs.lstatSync(path), statDir: fs.lstatSync(path.dirname(path)), "unable to get lock" + return callback(error) runner (error1, args...) -> Lockfile.unlock path, (error2) -> error = error1 or error2 diff --git a/services/clsi/app/coffee/ProjectPersistenceManager.coffee b/services/clsi/app/coffee/ProjectPersistenceManager.coffee index 944ea70812..2565af399d 100644 --- a/services/clsi/app/coffee/ProjectPersistenceManager.coffee +++ b/services/clsi/app/coffee/ProjectPersistenceManager.coffee @@ -51,12 +51,16 @@ module.exports = ProjectPersistenceManager = clearProjectFromCache: (project_id, callback = (error) ->) -> logger.log project_id: project_id, "clearing project from cache" UrlCache.clearProject project_id, (error) -> - return callback(error) if error? + if error? + logger.err error:error, project_id: project_id, "error clearing project from cache" + return callback(error) ProjectPersistenceManager._clearProjectFromDatabase project_id, (error) -> - return callback(error) if error? - callback() + if error? + logger.err error:error, project_id:project_id, "error clearing project from database" + callback(error) _clearProjectFromDatabase: (project_id, callback = (error) ->) -> + logger.log project_id:project_id, "clearing project from database" job = (cb)-> db.Project.destroy(where: {project_id: project_id}) .then(() -> cb())