From 19e7522d3ffad289fdc96ee322ac7bfc6fed75eb Mon Sep 17 00:00:00 2001 From: Brian Gough Date: Wed, 22 Feb 2017 13:46:34 +0000 Subject: [PATCH] make logging of hash errors optional --- services/document-updater/app/coffee/RedisManager.coffee | 8 +++++--- .../unit/coffee/RedisManager/RedisManagerTests.coffee | 1 + 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/services/document-updater/app/coffee/RedisManager.coffee b/services/document-updater/app/coffee/RedisManager.coffee index f2187a8abf..7a2d9c39e6 100644 --- a/services/document-updater/app/coffee/RedisManager.coffee +++ b/services/document-updater/app/coffee/RedisManager.coffee @@ -18,6 +18,8 @@ setScript = """ return redis.sha1hex(ARGV[1]) """ +logHashErrors = Settings.documentupdater?.logHashErrors + module.exports = RedisManager = rclient: rclient @@ -43,7 +45,7 @@ module.exports = RedisManager = return callback(error) if error? # check the hash computed on the redis server writeHash = result?[0] - if writeHash? and writeHash isnt docHash + if logHashErrors and writeHash? and writeHash isnt docHash logger.error project_id: project_id, doc_id: doc_id, writeHash: writeHash, origHash: docHash, "hash mismatch on putDocInMemory" # update docsInProject set rclient.sadd keys.docsInProject(project_id:project_id), doc_id, callback @@ -83,7 +85,7 @@ module.exports = RedisManager = # check sha1 hash value if present if docLines? and storedHash? computedHash = RedisManager._computeHash(docLines) - if computedHash isnt storedHash + if logHashErrors and computedHash isnt storedHash logger.error project_id: project_id, doc_id: doc_id, doc_project_id: doc_project_id, computedHash: computedHash, storedHash: storedHash, "hash mismatch on retrieved document" try @@ -164,7 +166,7 @@ module.exports = RedisManager = return callback(error) if error? # check the hash computed on the redis server writeHash = result?[0] - if writeHash? and writeHash isnt newHash + if logHashErrors and writeHash? and writeHash isnt newHash logger.error doc_id: doc_id, writeHash: writeHash, origHash: newHash, "hash mismatch on updateDocument" return callback() diff --git a/services/document-updater/test/unit/coffee/RedisManager/RedisManagerTests.coffee b/services/document-updater/test/unit/coffee/RedisManager/RedisManagerTests.coffee index 6cfd8bce3c..c61cfddfc7 100644 --- a/services/document-updater/test/unit/coffee/RedisManager/RedisManagerTests.coffee +++ b/services/document-updater/test/unit/coffee/RedisManager/RedisManagerTests.coffee @@ -26,6 +26,7 @@ describe "RedisManager", -> docsInProject: ({project_id}) -> "DocsIn:#{project_id}" ranges: ({doc_id}) -> "Ranges:#{doc_id}" "logger-sharelatex": @logger = { error: sinon.stub(), log: sinon.stub(), warn: sinon.stub() } + "settings-sharelatex": {documentupdater: {logHashErrors: true}} "./Metrics": @metrics = inc: sinon.stub() Timer: class Timer