The timeout elapsed prior to obtaining a distributed lock on the ‘HangFire:lock:recurring-job:xxx’ resource.
Where currently getting this exception on our servers, which prevents them from starting up. Can confirm that this is an issue on both version 1.7.11 and 1.7.12.
QueuePollInterval is set to TimeSpan.Zero as this has been the recommended setting since version 1.7.0. I suspect this could be the issue. We have bumped into this issue on occasion and our solution has always been to truncate the hangfire tables, but this is not a viable solution as we currently have some critical jobs enqueued.
Do you guys have any input? - Thanks!
Our SQL configuration looks like this:
GlobalConfiguration.Configuration.UseSqlServerStorage(_sqlConnectionName, new SqlServerStorageOptions
{
CommandBatchMaxTimeout = TimeSpan.FromMinutes(5),
QueuePollInterval = TimeSpan.Zero,
SlidingInvisibilityTimeout = TimeSpan.FromMinutes(5),
UseRecommendedIsolationLevel = true,
PrepareSchemaIfNecessary = true, // Default value: true
EnableHeavyMigrations = false, // Default value: false
UsePageLocksOnDequeue = true,
DisableGlobalLocks = true,
});