Проблемы с фидом изменений Cosmos. Подписчик перестает получать обновления, когда сервис, на котором размещена аренда, перестраивается. - PullRequest
0 голосов
/ 27 мая 2020

У нас возникла странная проблема с подписчиком канала изменений, который не собирает новые записи после повторного развертывания базы данных cosmos в другом сервисе. Мое предположение заключалось в том, что когда канал не работает, он затем возобновит работу с того места, где он остановился, когда контейнер снова станет доступен? с конфигурацией фида?

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

Это то, что наша конфигурация фида изменений выглядит так.

 var changeFeedProcessorBuilder = (await _cosmosProvider
                .GetContainer(_config.DatabaseName, _config.SourceContainerName))
                .GetChangeFeedProcessorBuilder<CosmosAggregateEventEntity>(_projector.Name, OnMessage)
                .WithInstanceName($"Processor{Guid.NewGuid().ToString().Replace("-", string.Empty)}")
                .WithLeaseContainer(await _cosmosProvider.GetContainer(_config.DatabaseName, CosmosChangeFeedConfiguration.LeaseContainerName, "/id"))
                .WithStartTime(DateTime.MinValue.ToUniversalTime());

            if (_defaultPollingTimeOverride != null)
                changeFeedProcessorBuilder.WithPollInterval((TimeSpan)_defaultPollingTimeOverride);

            _processor = changeFeedProcessorBuilder.Build();

            await _processor.StartAsync();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...