gpt4 book ai didi

ravendb - RavenDB 中的 System.NotSupportedException : 'Optimistic concurrency for ' Taxes/353-A' is not supported when using a cluster transaction.'

转载 作者:行者123 更新时间:2023-12-04 01:07:37 25 4
gpt4 key购买 nike

我们正在使用集群范围的事务,并且在更新文档时收到主题行中提到的错误。要更新文档,首先,我们从数据库加载它,修改一些字段,然后使用提供的 ChangeVectorId 保存它。我的理解是,提供 ChangeVector 仅为该 session 启用乐观并发,这是我们的意图。这是代码片段:

var taxToUpdate = await session.LoadAsync<Tax>(myTax.Id, cancellationToken);
taxToUpdate.Description = "Updated description";
await session.StoreAsync(taxToUpdate , myTax.ChangeVector, myTax.Id, cancellationToken);
await session.SaveChangesAsync(cancellationToken);

堆栈跟踪显示为:

Raven.Client.Documents.Session.InMemoryDocumentSessionOperations.ValidateClusterTransaction(SaveChangesDataresult) inC:\Builds\RavenDB-Stable-5.1\51010\src\Raven.Client\Documents\Session\InMemoryDocumentSessionOperations.cs:line883 atRaven.Client.Documents.Session.Operations.BatchOperation.CreateRequest()inC:\Builds\RavenDB-Stable-5.1\51010\src\Raven.Client\Documents\Session\Operations\BatchOperation.cs:line41 atRaven.Client.Documents.Session.AsyncDocumentSession.d__31.MoveNext()inC:\Builds\RavenDB-Stable-5.1\51010\src\Raven.Client\Documents\Session\AsyncDocumentSession.cs:line157 atSystem.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() atSystem.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Tasktask) atSystem.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Tasktask) at System.Runtime.CompilerServices.TaskAwaiter.GetResult()

这个问题的解决方案是什么,因为在我们的应用程序上下文中必须使用 ChangeVector

最佳答案

关于ravendb - RavenDB 中的 System.NotSupportedException : 'Optimistic concurrency for ' Taxes/353-A' is not supported when using a cluster transaction.',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65925287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com