首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hangfire.MongoDB异常:无法在元素{Parameters:[...]}中创建字段'Continuations‘

Hangfire.MongoDB异常:无法在元素{Parameters:[...]}中创建字段'Continuations‘
EN

Stack Overflow用户
提问于 2020-04-14 00:23:17
回答 2查看 285关注 0票数 0

我更新到最新的Hangfire.Mongo (0.6.7)和最新的MongoDB驱动程序(2.10.3)。更新后,一些Hangfire作业会抛出此异常:

代码语言:javascript
复制
A bulk write operation resulted in one or more errors. Cannot create field 'Continuations' in element {Parameters: [ [ "CurrentCulture", ""en-SE"" ], [ "CurrentUICulture", ""en-US"" ] ]}'

任何使用BackgroundJob.ContinueJobWith启动作业的尝试都会抛出此异常。

这就是我在Visual Studio中跟踪异常的地方:

这是堆栈跟踪:

代码语言:javascript
复制
at MongoDB.Driver.MongoCollectionImpl`1.BulkWrite(IClientSessionHandle session, IEnumerable`1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl`1.<>c__DisplayClass23_0.<BulkWrite>b__0(IClientSessionHandle session)
at MongoDB.Driver.MongoCollectionImpl`1.UsingImplicitSession[TResult](Func`2 func, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl`1.BulkWrite(IEnumerable`1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at Hangfire.Mongo.MongoWriteOnlyTransaction.Commit() in C:\Code\Hangfire.Mongo\src\Hangfire.Mongo\MongoWriteOnlyTransaction.cs:line 400
at Hangfire.Mongo.MongoConnection.SetJobParameter(String id, String name, String value) in C:\Code\Hangfire.Mongo\src\Hangfire.Mongo\MongoConnection.cs:line 76
at Hangfire.ContinuationsSupportAttribute.AddContinuation(ElectStateContext context, AwaitingState awaitingState)
at Hangfire.Profiling.ProfilerExtensions.InvokeAction[TInstance](InstanceAction`1 tuple)
at Hangfire.Profiling.EmptyProfiler.InvokeMeasured[TInstance,TResult](TInstance instance, Func`2 action, String message)
at Hangfire.Profiling.ProfilerExtensions.InvokeMeasured[TInstance](IProfiler profiler, TInstance instance, Action`1 action, String message)
at Hangfire.States.StateMachine.ApplyState(ApplyStateContext initialContext)
at Hangfire.Client.CoreBackgroundJobFactory.<>c__DisplayClass14_0.<Create>b__3(Int32 attempt)
at Hangfire.Client.CoreBackgroundJobFactory.<>c__DisplayClass15_0.<RetryOnException>b__0(Int32 attempt)
at Hangfire.Client.CoreBackgroundJobFactory.RetryOnException[T](Int32& attemptsLeft, Func`2 action)
EN

回答 2

Stack Overflow用户

发布于 2020-04-14 15:56:29

感谢你张贴这篇文章。

我将在这里解决github问题中的bug:https://github.com/sergeyzwezdin/Hangfire.Mongo/issues/235

票数 1
EN

Stack Overflow用户

发布于 2020-10-06 23:15:59

我们遇到了类似的情况。归根结底就是我们如何重写字典序列化的默认MongoDB约定。这个MongoDB实现对如何与它创建的字典交互进行了硬编码,如果这些字典没有存储为默认的“文档”,比如ArrayOfArrays或ArrayOfDocuments,它就根本不能工作。

我们继续使用Redis作为存储提供商。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61192195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档