Je suis assez novice en ce qui concerne MongoDB, Mongoose, ainsi que les environnements Azure. J'ai des problèmes avec une requête spécifique qui fonctionne bien. Mais elle génère une erreur lorsque les résultats attendus de la requête sont supérieurs à 500. Le résultat est le rapport accumulé qui peut avoir un maximum de 1200 enregistrements. Et les résultats sont générés à partir de 2 collections avec la population. Voici ma fonction node.js/express api qui génère les résultats.
index: (req, res, next) => {
Store.find({isChecked: true}).batchSize(1200)
.populate('lastCheckResult').exec(function (err, stores) {
if (err) {
console.log(err);
return next(err);
}
else {
res.locals.stores = stores;
return next();
}
});
},
Et voici l'erreur de l'application Web Azure (node.js).
"Message : {"errors" :[{"severity" : "Error", "location":{"start":0, "end":75279}, "code" : "SC3004", "message" : "La requête SQL a dépassé le nombre maximum d'opérateurs 'OR'. La limite autorisée est de 500."}]} ActivityId : 96ebe198-0000-0000-0000-000000000000, Request URI : /apps/32fe74cb-f1dd-4433-bfbf-ba15991cdee1/services/d914c6a9-eb86-43d8-9108-4ee395d25345/partitions/aa7a586e-7f30-4a02-99e4-8a21d2dc8295/replicas/131759772120608879s, RequestStats: ResponseTime : 2018-07-30T10:54:11.9018240Z, StoreReadResult : StorePhysicalAddress : rntbd://10.0.0. 48:14000/apps/32fe74cb-f1dd-4433-bfbf-ba15991cdee1/services/d914c6a9-eb86-43d8-9108-4ee395d25345/partitions/aa7a586e-7f30-4a02-99e4-8a21d2dc8295/replicas/131759772120608879s, LSN: 2965, GlobalCommittedLsn: 2964, PartitionKeyRangeId: 0, IsValid : True, StatusCode : 0, IsGone : False, IsNotFound : False, IsInvalidPartition : False, RequestCharge : 1, ItemLSN : -1, ResourceType : Document, OperationType : Query , SDK : Microsoft.Azure.Documents.Common/2.0.0.0".
Quelqu'un peut-il m'aider à résoudre ou à contourner ce type de problème ?