我有Hangfire 1.6.2和Hangfire.MySql.NetCore 1.0.7的asp.net核心2.1应用程序。有一个作业,当它第三次或第四次入队时,应用程序抛出这个异常并关闭;An unhandled exception of type 'System.StackOverflowException' occurred in Hangfire.AspNetCore.dll
在它正在入队的时刻。其他后台作业也遵循此模式。作业成功入队,并在作业被激活到处理队列时抛出异常。这是一个日志,它出现在异常被抛出之前,这是作业被激活的同一时间。这暗示了分布式锁定的一些问题;
Hangfire.MySql.MySqlDistributedLock:Trace: MySqlDistributedLock resource=JobQueue, timeout=00:00:30
Hangfire.MySql.MySqlDistributedLock:Trace: Release resource=JobQueue
Hangfire.MySql.MySqlDistributedLock:Trace: MySqlDistributedLock resource=job:16:state-lock, timeout=00:15:00
Hangfire.MySql.MySqlDistributedLock:Trace: Acquire resource=job:16:state-lock, timeout=00:15:00
Hangfire.MySql.MySqlWriteOnlyTransaction:Trace: SetJobState jobId=16
Hangfire.MySql.MySqlWriteOnlyTransaction:Trace: PersistJob jobId=16
Hangfire.MySql.MySqlDistributedLock:Trace: Release resource=job:16:state-lock
An unhandled exception of type 'System.StackOverflowException' occurred in Hangfire.AspNetCore.dll
重启后,我转到hanfire仪表板,看到作业停留在“正在处理”状态
发布于 2018-12-20 20:42:41
在包管理器控制台中,请运行以下命令:
Install-Package HangFire.Core -Version 1.6.21
https://stackoverflow.com/questions/52930284
复制相似问题