InvalidOperationException: запись индекса считывателя не синхронизирована - PullRequest
7 голосов
/ 27 февраля 2020

У меня есть asp. net базовое приложение, которое использует mongodb в качестве бэкэнда.

Недавно я начал получать эту ошибку без каких-либо изменений в базе данных или коде.

Здесь завершено Я получаю ошибку при просмотре моего API

An error occurred while starting the application.
InvalidOperationException: Record reader index out of sync.
DnsClient.DnsRecordFactory.GetRecord(ResourceRecordInfo info)

DnsResponseException: Unhandled exception
DnsClient.LookupClient.ResolveQuery(DnsMessageHandler handler, DnsRequestMessage request, Audit continueAudit)

InvalidOperationException: Record reader index out of sync.
DnsClient.DnsRecordFactory.GetRecord(ResourceRecordInfo info)
DnsClient.DnsMessageHandler.GetResponseMessage(ArraySegment<byte> responseData)
DnsClient.DnsUdpMessageHandler.Query(IPEndPoint server, DnsRequestMessage request, TimeSpan timeout)
DnsClient.LookupClient.ResolveQuery(DnsMessageHandler handler, DnsRequestMessage request, Audit continueAudit)

Show raw exception details
DnsResponseException: Unhandled exception
DnsClient.LookupClient.ResolveQuery(DnsMessageHandler handler, DnsRequestMessage request, Audit continueAudit)
DnsClient.LookupClient.Query(DnsQuestion question)
MongoDB.Driver.Core.Configuration.ConnectionString.Resolve()
MongoDB.Driver.MongoUrl.Resolve()
MongoDB.Driver.MongoClientSettings.FromUrl(MongoUrl url)
MongoDbGenericRepository.MongoDbContext..ctor(string connectionString, string databaseName)
Microsoft.Extensions.DependencyInjection.MongoDbIdentityBuilderExtensions.AddMongoDbStores<TUser, TRole, TKey>(IdentityBuilder builder, string connectionString, string databaseName)
AspNetCore.Identity.MongoDbCore.Extensions.ServiceCollectionExtension.ConfigureMongoDbIdentity<TUser, TRole, TKey>(IServiceCollection services, MongoDbIdentityConfiguration mongoDbIdentityConfiguration, IMongoDbContext mongoDbContext)
BrightSteps.Web.Api.Extensions.Utility.ConfigureMongoIdentity(IServiceCollection services, MongoDbSettings settings) in Utility.cs
BrightSteps.Web.Api.Startup.ConfigureServices(IServiceCollection services) in Startup.cs
Microsoft.AspNetCore.Hosting.ConventionBasedStartup.ConfigureServices(IServiceCollection services)
Microsoft.AspNetCore.Hosting.Internal.WebHost.EnsureApplicationServices()
Microsoft.AspNetCore.Hosting.Internal.WebHost.Initialize()
Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication()

Show raw exception details

Ответы [ 2 ]

3 голосов
/ 02 марта 2020

Оказывается, эта проблема была со строкой подключения и моей версией драйвера.

C# Драйвер MongoDB зависит от DNSClient. Net Пакет , который используется для выполнения DNS-поиск строки подключения.

Поскольку я использовал более старую версию драйвера, он не поддерживает строку подключения SVR mon go db, и мне приходится использовать строку подключения без SVR в mongodb.

0 голосов
/ 18 апреля 2020

Кажется, это ошибка в DnsClient, от которой зависит MongoDb.Driver. https://github.com/MichaCo/DnsClient.NET/issues/51

Для исправления можно обновить до последней версии DnsClient (1.3.1 на момент написания) https://www.nuget.org/packages/DnsClient/1.3.1

Или если вы можете обновить пакет MongoDb.Driver, который вы можете обновить. Последний (2.10.3 атм) включает в себя обновленный DnsClient. https://www.nuget.org/packages/mongodb.driver

...