Monogdb использует курсор для просмотра более 1 миллиона коллекций

Когда я прохожу по коллекции A, не выполняя других операций, я могу полностью пройти по множеству A. Но когда я прохожу коллекцию A и запрашиваю две коллекции BC через поле id коллекции A, обход будет прерван。 [1]: https://i.stack.imgur.com/KkRl6.png [2]: https://i.stack.imgur.com/eIYQC.png

MongoDB.Driver.MongoCommandException: Command getMore failed: Cursor not found

IMongoCollection<BsonDocument> collection = database.GetCollection<BsonDocument>("A");
        var cursor = await collection.FindAsync(new BsonDocument(), new FindOptions<BsonDocument>
        {
            BatchSize = 100,
            Sort = Builders<BsonDocument>.Sort.Ascending("_id"),
        });

        //test1...
        await cursor.ForEachAsync(f =>
        {
            Console.WriteLine(f["id"].AsString);
        });

        //test2...
        await cursor.ForEachAsync(async f =>
        {
            var shotCollection = database.GetCollection<BsonDocument>("B");
            var shots = await shotCollection.Find(new BsonDocument("parentId", f["id"])).ToListAsync();

            var storyCollection = database.GetCollection<BsonDocument>("C");
            var stories = await storyCollection.Find(new BsonDocument("parentId", f["id"])).ToListAsync();


            //some code......
        });

Не используйте курсоры тайм-аута или посмотрите jira.mongodb.org/browse/DOCS-11255, если это не поможет.

D. SM 30.03.2021 22:42
Использование JavaScript и MongoDB
Использование JavaScript и MongoDB
Сегодня я собираюсь вкратце рассказать о прототипах в JavaScript, а также представить и объяснить вам работу с базой данных MongoDB.
0
1
34
0

Другие вопросы по теме