Надежный словарь Service Fabric - транзакция была внутренне прервана репликатором, так как она была активна слишком долго и заблокировала контрольную точку.
Я пытаюсь добавить более 100 тыс. Записей в надежный словарь. Я использую библиотеку https://github.com/jessebenson/service-fabric-indexing которой хранятся отдельные коллекции индексов. Я продолжаю сталкиваться с указанной выше ошибкой. На небольших наборах данных ошибок нет, но я не сузил предел. Пока я запускаю его только в локальном кластере с 1 узлом.
Когда я использую обычную надежную коллекцию, операция выполняется успешно, но для завершения требуется около 15 секунд. К сожалению, мне нужна возможность извлекать элементы по groupId, поэтому потребуется библиотека, такая как service-fabric-indexing или аналогичный метод. Мне действительно нужен более надежный ILookup, чем словарь, поскольку в некоторых случаях мне нужно получить группу записей по groupId, а в других - получить одну запись по идентификатору.
Я неправильно подхожу к проблеме? Мне трудно поверить, что надежные коллекции не могут обрабатывать две коллекции (индекс и основную), обновляемые 100 тыс. Раз за одну транзакцию, и все это одним потоком. Я видел другие сообщения с этой ошибкой (более ранняя итерация, но я считаю, что та же проблема и результат были... не обращайтесь к нескольким коллекциям в транзакции. Это действительно состояние надежных коллекций, или мы делаем это неправильно?