【发布时间】:2016-02-05 08:08:46
【问题描述】:
上下文
我有两个应用程序,一个是我的主要企业应用程序,另一个是我托管的 hangfire(hangfire 服务器、客户端和仪表板)。我的主应用程序也使用 hangfire 来完成一些长任务并异步执行它们。两者都使用相同的数据库进行 HF 存储。而且只有一台 HF 服务器。
问题
我间歇性地收到以下错误 -
“无法将状态更改为‘处理中’:未找到目标方法。” 或
“无法将状态更改为‘入队’:找不到目标方法。”
有以下细节-
System.IO.FileNotFoundException
无法加载文件或程序集“MyApp.Hangfire,版本=1.0.0.0, Culture=neutral, PublicKeyToken=null' 或其依赖项之一。这 系统找不到指定的文件。
MyApp.Hangfire 是我的hangfire 应用程序执行作业。而且我确信它就在那里,甚至一些成功的工作也证实了这一点。
详情请查看附件截图。
观察
问题并不一致,作业并不总是失败,有时它会失败,重新排队并通过,有时当它重试失败时甚至会失败。 如截图所示
【问题讨论】:
-
你使用的是什么版本的 Hangfire?
-
@TomRedfern:我使用的是最新版本的 HF,即 1.5.3
-
如果你重新排队作业,它总是失败?
-
@TomRedfern:并非总是如此,有时它会通过,有时甚至会失败。我也重新检查过,只有 HF 服务器,没有其他应用程序使用相同的 HF DB。甚至没有 IIS 重置。 :(
-
@reggieboyYEAH - 就我而言,HF 数据库已损坏,所以我刚刚为 HF 创建了一个新的空数据库,并使用新名称,它可以正常工作。