upgrade script to clear sessions

v1.18.x
barisusakli
parent 65a65b19c0
commit cf6c4667c8

@ -12,7 +12,7 @@ var schemaDate;
var thisSchemaDate;
// IMPORTANT: REMEMBER TO UPDATE VALUE OF latestSchema
var latestSchema = Date.UTC(2017, 1, 28);
var latestSchema = Date.UTC(2017, 3, 16);
Upgrade.check = function (callback) {
db.get('schemaDate', function (err, value) {
@ -425,6 +425,50 @@ Upgrade.upgrade = function (callback) {
next();
}
},
function (next) {
thisSchemaDate = Date.UTC(2017, 3, 16);
var schemaName = '[2017/4/16] Delete sessions';
if (schemaDate < thisSchemaDate) {
updatesMade = true;
winston.info(schemaName);
var configJSON = require('../config.json');
var isRedisSessionStore = configJSON.hasOwnProperty('redis');
async.waterfall([
function (next) {
if (isRedisSessionStore) {
var rdb = require('./database/redis');
var client = rdb.connect();
async.waterfall([
function (next) {
client.keys('sess:*', next);
},
function (sessionKeys, next) {
async.eachSeries(sessionKeys, function (key, next) {
client.del(key, next);
}, next);
},
], function (err) {
next(err);
});
} else {
db.client.collection('sessions').drop({}, function (err) {
next(err);
});
}
},
function (next) {
winston.info(schemaName + ' - done');
Upgrade.update(thisSchemaDate, next);
},
], next);
} else {
winston.info(schemaName + ' - skipped!');
next();
}
},
// Add new schema updates here
// IMPORTANT: REMEMBER TO UPDATE VALUE OF latestSchema IN LINE 24!!!
], function (err) {

Loading…
Cancel
Save