update deprecated methods (#6794)

This commit is contained in:
Barış Soner Uşaklı
2018-09-26 15:02:57 -04:00
committed by GitHub
parent 1cb2e1e368
commit 18d0deeccb
10 changed files with 90 additions and 67 deletions

View File

@@ -32,9 +32,9 @@ module.exports = function (db, module) {
return callback();
}
var fields = { _id: 0, value: 1 };
if (withScores) {
fields.score = 1;
var fields = { _id: 0, _key: 0 };
if (!withScores) {
fields.score = 0;
}
if (Array.isArray(key)) {
@@ -62,7 +62,7 @@ module.exports = function (db, module) {
limit = 0;
}
db.collection('objects').find({ _key: key }, { fields: fields })
db.collection('objects').find({ _key: key }, { projection: fields })
.limit(limit)
.skip(start)
.sort({ score: sort })
@@ -70,6 +70,7 @@ module.exports = function (db, module) {
if (err || !data) {
return callback(err);
}
if (reverse) {
data.reverse();
}
@@ -117,12 +118,12 @@ module.exports = function (db, module) {
query.score.$lte = max;
}
var fields = { _id: 0, value: 1 };
if (withScores) {
fields.score = 1;
var fields = { _id: 0, _key: 0 };
if (!withScores) {
fields.score = 0;
}
db.collection('objects').find(query, { fields: fields })
db.collection('objects').find(query, { projection: fields })
.limit(count)
.skip(start)
.sort({ score: sort })
@@ -155,7 +156,7 @@ module.exports = function (db, module) {
query.score.$lte = max;
}
db.collection('objects').count(query, function (err, count) {
db.collection('objects').countDocuments(query, function (err, count) {
callback(err, count || 0);
});
};
@@ -164,7 +165,7 @@ module.exports = function (db, module) {
if (!key) {
return callback(null, 0);
}
db.collection('objects').count({ _key: key }, function (err, count) {
db.collection('objects').countDocuments({ _key: key }, function (err, count) {
count = parseInt(count, 10);
callback(err, count || 0);
});
@@ -220,7 +221,7 @@ module.exports = function (db, module) {
return callback(err, null);
}
db.collection('objects').count({
db.collection('objects').countDocuments({
$or: [
{
_key: key,
@@ -273,7 +274,7 @@ module.exports = function (db, module) {
return callback(null, null);
}
value = helpers.valueToString(value);
db.collection('objects').findOne({ _key: key, value: value }, { fields: { _id: 0, score: 1 } }, function (err, result) {
db.collection('objects').findOne({ _key: key, value: value }, { projection: { _id: 0, _key: 0, value: 0 } }, function (err, result) {
callback(err, result ? result.score : null);
});
};
@@ -283,7 +284,7 @@ module.exports = function (db, module) {
return callback();
}
value = helpers.valueToString(value);
db.collection('objects').find({ _key: { $in: keys }, value: value }, { _id: 0, _key: 1, score: 1 }).toArray(function (err, result) {
db.collection('objects').find({ _key: { $in: keys }, value: value }, { projection: { _id: 0, value: 0 } }).toArray(function (err, result) {
if (err) {
return callback(err);
}
@@ -306,7 +307,7 @@ module.exports = function (db, module) {
return callback(null, null);
}
values = values.map(helpers.valueToString);
db.collection('objects').find({ _key: key, value: { $in: values } }, { _id: 0, value: 1, score: 1 }).toArray(function (err, result) {
db.collection('objects').find({ _key: key, value: { $in: values } }, { projection: { _id: 0, _key: 0 } }).toArray(function (err, result) {
if (err) {
return callback(err);
}
@@ -333,7 +334,7 @@ module.exports = function (db, module) {
return callback();
}
value = helpers.valueToString(value);
db.collection('objects').findOne({ _key: key, value: value }, { _id: 0, value: 1 }, function (err, result) {
db.collection('objects').findOne({ _key: key, value: value }, { projection: { _id: 0, _key: 0, score: 0 } }, function (err, result) {
callback(err, !!result);
});
};
@@ -343,17 +344,19 @@ module.exports = function (db, module) {
return callback();
}
values = values.map(helpers.valueToString);
db.collection('objects').find({ _key: key, value: { $in: values } }, { fields: { _id: 0, value: 1 } }).toArray(function (err, results) {
db.collection('objects').find({ _key: key, value: { $in: values } }, { projection: { _id: 0, _key: 0, score: 0 } }).toArray(function (err, results) {
if (err) {
return callback(err);
}
results = results.map(function (item) {
return item.value;
var isMember = {};
results.forEach(function (item) {
if (item) {
isMember[item.value] = true;
}
});
values = values.map(function (value) {
return results.indexOf(value) !== -1;
return !!isMember[value];
});
callback(null, values);
});
@@ -364,17 +367,19 @@ module.exports = function (db, module) {
return callback();
}
value = helpers.valueToString(value);
db.collection('objects').find({ _key: { $in: keys }, value: value }, { fields: { _id: 0, _key: 1, value: 1 } }).toArray(function (err, results) {
db.collection('objects').find({ _key: { $in: keys }, value: value }, { projection: { _id: 0, score: 0 } }).toArray(function (err, results) {
if (err) {
return callback(err);
}
results = results.map(function (item) {
return item._key;
var isMember = {};
results.forEach(function (item) {
if (item) {
isMember[item._key] = true;
}
});
results = keys.map(function (key) {
return results.indexOf(key) !== -1;
return !!isMember[key];
});
callback(null, results);
});
@@ -384,7 +389,7 @@ module.exports = function (db, module) {
if (!Array.isArray(keys) || !keys.length) {
return callback(null, []);
}
db.collection('objects').find({ _key: { $in: keys } }, { _id: 0, _key: 1, value: 1 }).sort({ score: 1 }).toArray(function (err, data) {
db.collection('objects').find({ _key: { $in: keys } }, { projection: { _id: 0, score: 0 } }).sort({ score: 1 }).toArray(function (err, data) {
if (err) {
return callback(err);
}
@@ -412,7 +417,7 @@ module.exports = function (db, module) {
value = helpers.valueToString(value);
data.score = parseFloat(increment);
db.collection('objects').findAndModify({ _key: key, value: value }, {}, { $inc: data }, { new: true, upsert: true }, function (err, result) {
db.collection('objects').findOneAndUpdate({ _key: key, value: value }, { $inc: data }, { returnOriginal: false, upsert: true }, function (err, result) {
// if there is duplicate key error retry the upsert
// https://github.com/NodeBB/NodeBB/issues/4467
// https://jira.mongodb.org/browse/SERVER-14322
@@ -448,7 +453,7 @@ module.exports = function (db, module) {
var query = { _key: key };
buildLexQuery(query, min, max);
db.collection('objects').find(query, { _id: 0, value: 1 })
db.collection('objects').find(query, { projection: { _id: 0, _key: 0, score: 0 } })
.sort({ value: sort })
.skip(start)
.limit(count === -1 ? 0 : count)
@@ -469,7 +474,7 @@ module.exports = function (db, module) {
var query = { _key: key };
buildLexQuery(query, min, max);
db.collection('objects').remove(query, function (err) {
db.collection('objects').deleteMany(query, function (err) {
callback(err);
});
};
@@ -499,13 +504,12 @@ module.exports = function (db, module) {
module.processSortedSet = function (setKey, processFn, options, callback) {
var done = false;
var ids = [];
var project = { _id: 0, value: 1 };
if (options.withScores) {
project.score = 1;
var project = { _id: 0, _key: 0 };
if (!options.withScores) {
project.score = 0;
}
var cursor = db.collection('objects').find({ _key: setKey })
var cursor = db.collection('objects').find({ _key: setKey }, { projection: project })
.sort({ score: 1 })
.project(project)
.batchSize(options.batch);
async.whilst(