Hangfire.SqlServer 1.7.34

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Hangfire.SqlServer --version 1.7.34                
NuGet\Install-Package Hangfire.SqlServer -Version 1.7.34                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Hangfire.SqlServer" Version="1.7.34" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Hangfire.SqlServer --version 1.7.34                
#r "nuget: Hangfire.SqlServer, 1.7.34"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Hangfire.SqlServer as a Cake Addin
#addin nuget:?package=Hangfire.SqlServer&version=1.7.34

// Install Hangfire.SqlServer as a Cake Tool
#tool nuget:?package=Hangfire.SqlServer&version=1.7.34                

SQL Server 2008+ (including Express), SQL Server LocalDB and SQL Azure storage support for Hangfire (background job system for ASP.NET applications).

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp1.0 was computed.  netcoreapp1.1 was computed.  netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard1.3 is compatible.  netstandard1.4 was computed.  netstandard1.5 was computed.  netstandard1.6 was computed.  netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net45 is compatible.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen30 was computed.  tizen40 was computed.  tizen60 was computed. 
Universal Windows Platform uap was computed.  uap10.0 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (138)

Showing the top 5 NuGet packages that depend on Hangfire.SqlServer:

Package Downloads
Hangfire

An easy and reliable way to perform fire-and-forget, delayed and recurring, long-running, short-running, CPU or I/O intensive tasks inside ASP.NET applications. No Windows Service / Task Scheduler required. Even ASP.NET is not required. Backed by Redis, SQL Server, SQL Azure or MSMQ. This is a .NET alternative to Sidekiq, Resque and Celery. https://www.hangfire.io/

VirtoCommerce.Platform.Hangfire

Virto Commerce is a flexible B2B ecommerce solution that offers powerful tools for enterprise business users. https://virtocommerce.com

N3O.Umbraco.Scheduler

TODO

Hangfire.SqlServer.MSMQ

MSMQ queues support for SQL Server job storage implementation for Hangfire, a background job framework for .NET applications.

Naos.MessageBus.Hangfire.Sender

Created on 2022-06-27 21:28

GitHub repositories (23)

Showing the top 5 popular GitHub repositories that depend on Hangfire.SqlServer:

Repository Stars
abpframework/abp
Open-source web application framework for ASP.NET Core! Offers an opinionated architecture to build enterprise software solutions with best practices on top of the .NET. Provides the fundamental infrastructure, cross-cutting-concern implementations, startup templates, application modules, UI themes, tooling and documentation.
dotnetcore/Util
Util是一个.Net平台下的应用框架,旨在提升中小团队的开发能力,由工具类、分层架构基类、Ui组件,配套代码生成模板,权限等组成。
simplcommerce/SimplCommerce
A simple, cross platform, modulith ecommerce system built on .NET
VirtoCommerce/vc-platform
Virto Commerce B2B Innovation Platform
HTBox/allReady
This repo contains the code for allReady, an open-source solution focused on increasing awareness, efficiency and impact of preparedness campaigns as they are delivered by humanitarian and disaster response organizations in local communities.
Version Downloads Last updated
1.8.15 200,103 10/23/2024
1.8.14 2,680,662 6/11/2024
1.8.12 2,095,044 4/3/2024
1.8.11 1,230,292 2/23/2024
1.8.10 401,458 2/12/2024
1.8.9 692,674 1/24/2024
1.8.7 802,763 12/29/2023
1.8.6 2,137,672 10/18/2023
1.8.5 1,872,382 8/11/2023
1.8.4 449,642 7/27/2023
1.8.3 933,094 6/27/2023
1.8.2 955,146 5/26/2023
1.8.1 259,298 5/18/2023
1.8.0 647,975 4/28/2023
1.7.37 100,142 4/8/2024
1.7.36 360,374 6/29/2023
1.7.35 64,772 5/18/2023
1.7.34 966,760 3/30/2023
1.7.33 2,080,760 1/31/2023
1.7.32 2,364,194 11/21/2022
1.7.31 3,831,563 8/19/2022
1.7.30 2,460,212 6/10/2022
1.7.29 849,741 5/23/2022
1.7.28 6,727,841 12/18/2021
1.7.27 1,745,998 11/3/2021
1.7.26 263,427 10/27/2021
1.7.25 1,922,035 8/30/2021
1.7.24 2,065,513 6/28/2021
1.7.23 1,130,055 5/28/2021
1.7.22 1,568,527 4/13/2021
1.7.21 26,243 4/12/2021
1.7.20 713,004 3/19/2021
1.7.19 2,264,198 1/15/2021
1.7.18 1,550,307 11/20/2020
1.7.17 1,113,725 10/20/2020
1.7.16 210,100 10/14/2020
1.7.15 194,820 10/8/2020
1.7.14 729,725 9/24/2020
1.7.13 276,427 9/15/2020
1.7.12 1,394,725 7/24/2020
1.7.11 4,014,405 4/15/2020
1.7.10 452,561 4/2/2020
1.7.9 3,331,463 1/20/2020
1.7.8 1,182,482 12/5/2019
1.7.7 1,236,930 10/22/2019
1.7.6 2,072,628 8/5/2019
1.7.5 457,748 7/18/2019
1.7.4 521,205 6/28/2019
1.7.3 913,299 5/23/2019
1.7.2 530,428 4/29/2019
1.7.1 496,927 4/16/2019
1.7.0 473,346 3/29/2019
1.6.30 48,737 4/29/2021
1.6.29 93,486 4/15/2020
1.6.28 84,961 1/14/2020
1.6.27 68,492 6/27/2019
1.6.26 91,300 5/23/2019
1.6.25 24,031 4/9/2019
1.6.24 131,612 3/27/2019
1.6.23 277,649 3/13/2019
1.6.22 961,620 1/25/2019
1.6.21 1,336,693 11/1/2018
1.6.20 1,853,233 7/31/2018
1.6.19 1,653,532 4/6/2018
1.6.18 34,028 4/5/2018
1.6.17 2,021,200 9/19/2017
1.6.16 221,646 9/2/2017
1.6.15 314,777 8/8/2017
1.6.14 385,854 6/16/2017
1.6.13 87,195 6/7/2017
1.6.12 743,624 3/22/2017
1.6.11 49,913 3/14/2017
1.6.10 19,316 3/13/2017
1.6.9 73,773 3/2/2017
1.6.8 450,044 12/21/2016
1.6.7 226,620 11/25/2016
1.6.6 246,228 10/13/2016
1.6.5 132,733 9/24/2016
1.6.4 115,228 8/30/2016
1.6.3 49,611 8/19/2016
1.6.2 76,637 8/5/2016
1.6.1 117,252 7/27/2016
1.6.0 65,162 7/15/2016
1.5.9 339,126 7/11/2016
1.5.8 65,973 6/17/2016
1.5.7 37,455 5/30/2016
1.5.6 92,960 4/22/2016
1.5.5 28,623 4/14/2016
1.5.4 69,033 3/22/2016
1.5.3 361,310 11/6/2015
1.5.2 40,542 10/15/2015
1.5.1 7,157 10/14/2015
1.5.0 66,366 10/1/2015
1.4.7 6,994 10/1/2015
1.4.6 58,490 8/29/2015
1.4.5 54,077 7/24/2015
1.4.4 6,420 7/23/2015
1.4.3 92,496 5/27/2015
1.4.2 15,649 5/6/2015
1.4.1 37,822 4/14/2015
1.3.4 68,874 2/4/2015
1.3.3 9,244 1/28/2015
1.3.2 6,375 1/27/2015
1.3.1 11,798 1/13/2015
1.3.0 12,763 12/10/2014
1.2.2 35,227 11/24/2014
1.2.1 6,511 11/22/2014
1.2.0 9,821 11/17/2014
1.1.1 23,744 9/5/2014
1.1.0 7,737 9/3/2014
1.0.2 10,740 7/1/2014
1.0.1 6,577 6/30/2014
1.0.0 6,771 6/30/2014
0.9.1 8,087 6/12/2014
0.9.0 6,200 6/7/2014
0.8.3 6,388 5/23/2014
0.8.2 6,197 5/21/2014
0.8.1 8,017 5/17/2014
0.8.0 7,268 5/2/2014
0.7.5 6,300 4/10/2014
0.7.4 5,667 4/7/2014
0.7.3 5,393 4/4/2014
0.7.1 6,036 4/1/2014
0.7.0 17,154 3/22/2014

https://www.hangfire.io/blog/

Please see https://docs.hangfire.io/en/latest/upgrade-guides/upgrading-to-hangfire-1.7.html to learn how to upgrade from 1.6.X.

1.7.33
• Changed – Use SQL Server as a time authority for server heartbeats.
• Changed – Increase `MinPollingDelayMs` for SQL Server to 100 milliseconds.
• Changed – Don't wait on SQL Server's side when using long polling for fetching.

1.7.29
• Fixed – Command batching is now fully working for the Microsoft.Data.SqlClient package (by @0xced).

1.7.28
• Fixed – Possibly fixed CPU consumption problems and high amounts of fetching queries after deploys to IIS.
• Fixed – No more than a single long-polling query is allowed per storage instance when using sub-second polling.
• Fixed – Don't depend on thread pool when sending heartbeats for active jobs to avoid problems when it's starved.

1.7.25
• Fixed – Avoid any blocked rows when removing inactive servers from the `Server` table.

1.7.24
• Changed – Don't use the `readcommittedlock` table hint when not required.
• Project – Stop using `TransactionScope` class in tests, re-create database instead.
• Project – Make it possible to run SQL Server tests on Mono on Linux.

1.7.23
• Fixed – `NotImplementedException` in `Transaction.EnlistPromotableSinglePhase` when running on Mono.

1.7.21
• Fixed – Ensure connection is released when exception is thrown when during lock release.
• Fixed – "A network-related or instance-specific error" when using `DisableConcurrentExecution` for long-running jobs.

1.7.20

Please see https://www.hangfire.io/blog/2021/03/19/hangfire-1.7.20.html for details, manual changes
required for those who already migrated to Schema 6 and 7. This problem will be also fixed in a new
migration in Hangfire 1.8.0.

• Fixed – `Schema 6` migration now fixes problem that prevents 2,147,483,648th job from being enqueued.

1.7.19
• Fixed – Return `null` instead of throwing FormatException when job id can't be parsed.
• Project – Run the entire Hangfire.SqlServer test suite against the new Microsoft.Data.SqlClient package.

1.7.18
• Added – `SqlServerStorageOptions.DeleteExpiredBatchSize` option to remove more expired records in a single pass.
• Fixed – Don't throw from `SqlServerStorage.ToString` method when using custom factory or existing connection.

1.7.17
• Fixed – SqlException "Incorrect syntax near 'throw'" after upgrading to 1.7.15 when using SQL Server 2008 or 2008R2.

1.7.16
• Fixed – Blocking problems when using multiple storages with the same queue names in the same process (appeared in 1.7.9).

1.7.15
• Fixed – Avoid deadlocks when using the `SetJobParameter` method without introducing issues for older schemas.
• Fixed – Remove duplicate sorting in the `SqlServerMonitoringApi.GetJobs` method which is used by a lot of queries.

1.7.14
• Fixed – Duplicate entries in the `JobParameters` table after upgrading to version 1.7.13.
• Fixed – Extensive retries on a method that has a retry attribute after upgrading to 1.7.13.
• Fixed – "ArgumentException: An item with the same key has already been added. Key: RetryCount" in `SqlServerMonitoringApi`.

1.7.13
• Added – `UseIgnoreDupKeyOption` for SQL Server storage configuration (changes to [Set] and [Hash] tables required).
• Fixed – Don't truncate too long keys silently, throw exceptions instead.
• Fixed – Add missing null checks for methods in the `SqlServerWriteOnlyTransaction` class.
• Fixed – Change `holdlock` hint to `xlock` in `merge` statements in transaction to prevent deadlocks.
• Fixed – Don't rethrow "Lock request time out period exceeded" exceptions from expiration manager.
• Fixed – Increase [Server].[Id] column's length to 200 for new installations.

1.7.10
• Changed – Use `XACT_ABORT` option for `ExpirationManager` queries.
• Changed – Don't rely on implicit rollback when disposing transactions.
• Fixed – `NullReferenceException` in logs thrown from `SqlInternalTransaction.Rollback` method.

1.7.9
• Changed – Implement long polling fetch for sub-second polling delays without `sp_getapplock`.
• Fixed – Don't leak `DbConnection` instance when an exception occurs during its opening.
• Fixed – Can not obtain connection from the pool exception after database was offline.
• Fixed – High number of waits in SQL Server when Hangfire Servers are idle.

1.7.8
• Added – Support for Microsoft.Data.SqlClient package when using a custom connection factory (Part II).
• Fixed – Remove `System.Data.SqlClient` dependency from `SqlCommandBatch` and `ExpirationManager`.

1.7.7
• Added – Add support for Microsoft.Data.SqlClient package when using custom connection factory (Part I).
• Added – Add `UseFineGrainedLocks` option to avoid deadlocks in some theoretical cases.
• Added – Add missing overload for `UseSqlServerStorage` with connection factory parameter only.
• Added – Expose the SqlServerObjectsInstaller.GetInstallScript method (by @altso).
• Fixed – Make command batching working on .NET Core when using System.Data.SqlClient 4.7.0 and higher.
• Fixed – Permit dash characters (`-`) in schema names (by @kendaleiv).
• Fixed – Escape square bracket characters in schema names.
• Project – Add support for `netcoreapp3.0` target in Hangfire.SqlServer.Tests.
• Project – Take schema name from constant in Hangfire.SqlServer.Tests (by @kendaleiv).
• Project – Make Hangfire.SqlServer.Tests work on Linux in Travis CI environment.

1.7.4
• Fixed – Potential deadlocks cause by suboptimal queries when using `SlidingInvisibilityTimeout` fetching.
• Fixed – Prevent zero delays between fetch retry attempts when lock acquisition failed without blocking.
• Fixed – Specify float precision explicitly for the `Score` column in the `AddToSet` method.

1.7.3
• Fixed – Wrong error message in migration script, when @CurrentSchemaVersion has a NULL value (by @penenkel).

1.7.2
• Fixed – Occasional "DataException: Error parsing column" error when using blocking fetch.

1.7.1
• Changed – Use blocking fetch implementation only for sub-second polling intervals.
• Fixed – Don't fail with an exception when can't connect to MSSQL instance during start-up.
• Fixed – Don't access the `JobQueue` table when using blocking query and don't have results.

1.7.0
• Added – Full .NET Core 2.0 support by explicitly targeting .NET Standard 2.0.
• Added – `Schema 7` migration to fix the `IX_HangFire_Set_Score` index to include the `Key` column.
• Added – `Schema 6` migration with less indexes, better physical layout and `bigint` support (disabled by default).
• Added – Blocking fetch support for sliding expiration-based fetch to avoid excessive polling.
• Added – `SqlServerStorageOptions.EnableHeavyMigrations` switch to automatically install even heavy migrations.
• Added – `SqlServerStorageOptions.DisableGlobalLocks` property to avoid custom locking scheme.
• Added – `SqlServerStorageOptions.UsePageLocksOnDequeue` property to use less CPU consuming fetch.
• Added – Callback method to allow to open the database with impersonation (by @BjoernHund).
• Added – `SqlServerStorageOptions.UseRecommendedIsolationLevel` option to set the minimum possible level.
• Changed – Identity columns either converted to the `bigint` type, or entirely removed.
• Changed – Clustered indexes were organized according to the access patterns of their tables.
• Changed – Most of secondary indexes were either removed or made filtered.
• Changed – Optimize sliding-expiration-based fetching to use even less CPU time.
• Changed – Use write reordering and fine-grained locking scheme to improve parallelism.
• Changed – Monitoring API doesn't check state data to see state transition time.
• Changed – Allow to use zero-based poll interval when sliding invisibility timeout.
• Changed – Short paths for the `CreateExpiredJob` method to avoid some round-trips.
• Changed – Set `SqlParameter` types explicitly to not to duplicate query plans.
• Changed – Batch support for `AddToQueue` method when default provider is used.
• Changed – Check `FetchedAt` has expected value to prevent prolonging others' work.
• Changed – Use more recent Dapper 1.50.7 on all platforms except .NET Framework 4.5.
• Changed – Dapper package is internalized now even on .NET Core to avoid possible conflicts.
• Fixed – Avoid unnecessary waits in state changer when job was already expired.
• Fixed – Cannot resolve the collation conflict in `CountersAggregator`.
• Fixed – Background processing stops when identity columns exceed the `Int32.MaxValue`.
• Fixed – Slowdown of scheduled jobs due to the missing index on the `[Set]` table.