MongoDB продолжить с текущей позиции после потери соединения - PullRequest
2 голосов
/ 07 февраля 2012

Привет, у меня проблемы с сохранением соединения с моим MongoDB, и это приводит к прерыванию моей программы, когда она теряет соединение, как бы я продолжил печатать с того последнего места, где я потерял соединение, я веду счетчик индексано как мне использовать этот счет, чтобы начать с этой позиции в курсоре

using (server.RequestStart(db))
{
    var cursor = col.FindAll();
    foreach (var item in cursor)
    {
        //code here
    }
}

1 Ответ

1 голос
/ 07 февраля 2012

Почему у вас проблемы с сохранением соединения с MongoDB открытым? Вы теряете свое сетевое соединение в середине запроса? Вы рассчитываете время?

Как правило, единственный способ надежно перезапустить запрос - это если результаты сортируются, и вы используете запрос при перезапуске, чтобы пропустить уже обработанные документы (другими словами, пропустить те документы, где ключ сортировки меньше чем или равно последнему обработанному документу).

Возможно, вам не нужно вызывать RequestStart. Единственный раз, когда вам нужно вызывать RequestStart, это если вы хотите убедиться, что последовательность операций с базой данных выполняется на одном и том же соединении (что необходимо только в необычных обстоятельствах).

...