|
|
@@ -1,16 +1,3 @@
|
|
|
-/* eslint-disable
|
|
|
- handle-callback-err,
|
|
|
- no-unused-vars,
|
|
|
-*/
|
|
|
-// TODO: This file was created by bulk-decaffeinate.
|
|
|
-// Fix any style issues and re-enable lint.
|
|
|
-/*
|
|
|
- * decaffeinate suggestions:
|
|
|
- * DS101: Remove unnecessary use of Array.from
|
|
|
- * DS102: Remove unnecessary code created because of implicit returns
|
|
|
- * DS207: Consider shorter variations of null checks
|
|
|
- * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
|
|
|
- */
|
|
|
const Settings = require('settings-sharelatex')
|
|
|
const rclient = require('@overleaf/redis-wrapper').createClient(
|
|
|
Settings.redis.documentupdater
|
|
|
@@ -23,17 +10,17 @@ const getKeysFromNode = function (node, pattern, callback) {
|
|
|
let cursor = 0 // redis iterator
|
|
|
const keySet = {} // use hash to avoid duplicate results
|
|
|
// scan over all keys looking for pattern
|
|
|
- var doIteration = (cb) =>
|
|
|
- node.scan(cursor, 'MATCH', pattern, 'COUNT', 1000, function (error, reply) {
|
|
|
- if (error != null) {
|
|
|
+ const doIteration = () =>
|
|
|
+ node.scan(cursor, 'MATCH', pattern, 'COUNT', 1000, function(error, reply) {
|
|
|
+ if (error) {
|
|
|
return callback(error)
|
|
|
}
|
|
|
- ;[cursor, keys] = Array.from(reply)
|
|
|
+ ;[cursor, keys] = reply
|
|
|
console.log('SCAN', keys.length)
|
|
|
- for (const key of Array.from(keys)) {
|
|
|
+ for (const key of keys) {
|
|
|
keySet[key] = true
|
|
|
}
|
|
|
- if (cursor === '0') {
|
|
|
+ if (cursor==='0') {
|
|
|
// note redis returns string result not numeric
|
|
|
return callback(null, Object.keys(keySet))
|
|
|
} else {
|
|
|
@@ -52,8 +39,8 @@ const getKeys = function (pattern, callback) {
|
|
|
return async.concatSeries(nodes, doKeyLookupForNode, callback)
|
|
|
}
|
|
|
|
|
|
-const TTL = 60 * 60 // 1 hour
|
|
|
const expireDocOps = (callback) =>
|
|
|
+ // eslint-disable-next-line handle-callback-err
|
|
|
getKeys(keys.docOps({ doc_id: '*' }), (error, keys) =>
|
|
|
async.mapSeries(
|
|
|
keys,
|
|
|
@@ -69,7 +56,7 @@ setTimeout(
|
|
|
() =>
|
|
|
// Give redis a chance to connect
|
|
|
expireDocOps(function (error) {
|
|
|
- if (error != null) {
|
|
|
+ if (error) {
|
|
|
throw error
|
|
|
}
|
|
|
return process.exit()
|