我通过来自nodejs的mongoose驱动程序访问documentdb。
db.recordingModel.find(
{
dateRecorded :
{
"$gte": new Date("2015-10-01T00:00:00.000Z")
}
// status:"sync_error"
}, function(err, results) {
console.log(results);
console.log(err);
});
我收到了下一个错误 -
{ [MongoError: cursor does not exist, was killed or timed out]
name: 'MongoError',
message: 'cursor does not exist, was killed or timed out' }
如果我访问任何其他字段,一切正常。这个查询有什么问题?感谢。
解决方法
我从azure portal注意到日期字段结构复杂,所以我更新了我的查询。
"dateRecorded.$date" :
{
"$gte": 1491956026000
}
答案 0 :(得分:1)
我无法使用Mongoose v4.7.1
在我的网站上重现您的问题。
以下是我的完整示例代码:
var mongoose = require('mongoose');
mongoose.connect('DocumentDB-connection-string');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
// we're connected!
var kittySchema = mongoose.Schema({
name: String,
createdAt: Date
});
var Kitten = mongoose.model('Kitten', kittySchema);
var fluffy = new Kitten({ name: 'fluffy', createdAt: new Date() });
fluffy.save(function (err, fluffy) {
if (err) return console.error(err);
Kitten.find({createdAt: { '$gte': new Date("2015-10-01T00:00:00.000Z") }}, function (err, kittens) {
if (err) return console.error(err);
console.log(kittens);
})
});
});
我的文件:
输出: