This version fixes regression appeared in 2.8.0 which leads to occasional
SemaphoreFullException exception when distribute lock can’t be obtained and timeout exception should be thrown instead. Also the
RelyOnInternalReconnects experimental option was added to test less aggressive reconnection logic built into SE.Redis package.
By default Hangfire.Pro.Redis is using a custom connection manager that aggressively reconnects by creating a brand new multiplexer each time there is any problem to avoid numerous problems with network blips in cloud environments. But there were a lot of changes made to SE.Redis since connection manager appeared, and this experimental option allows to use less aggressive reconnection logic built into StackExchange.Redis itself.
Added – Experimental
RedisStorageOptions.RelyOnInternalReconnectsto rely on less aggressive SE.Redis’ logic for reconnects.
Fixed – Occasional
SemaphoreFullExceptionwhen distribute lock acquisition failed due to timeout.
- Fixed – Both configured and actual endpoints now shown in logs when connecting to Redis to avoid confusion.