Skip to content

Commit 58ec10d

Browse files
committed
Fix InvalidCastException during job fetch with older schemas
1 parent 0e9ea33 commit 58ec10d

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/Hangfire.SqlServer/SqlServerJobQueue.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -180,8 +180,8 @@ private SqlServerTimeoutJob FetchJob(string[] queues)
180180

181181
if (!reader.Read()) return null;
182182

183-
var id = reader.GetInt64(reader.GetOrdinal("Id"));
184-
var jobId = reader.GetInt64(reader.GetOrdinal("JobId"));
183+
var id = Convert.ToInt64(reader.GetValue(reader.GetOrdinal("Id")), CultureInfo.InvariantCulture); // Can be Int32 in older schemas
184+
var jobId = Convert.ToInt64(reader.GetValue(reader.GetOrdinal("JobId")), CultureInfo.InvariantCulture); // Can be Int32 in older schemas
185185
var queue = reader.GetString(reader.GetOrdinal("Queue"));
186186
var fetchedAt = reader.GetDateTime(reader.GetOrdinal("FetchedAt"));
187187

@@ -243,7 +243,7 @@ private SqlServerTransactionJob DequeueUsingTransaction(string[] queues, Cancell
243243
{
244244
if (reader.Read())
245245
{
246-
var jobId = reader.GetInt64(reader.GetOrdinal("JobId"));
246+
var jobId = Convert.ToInt64(reader.GetValue(reader.GetOrdinal("JobId")), CultureInfo.InvariantCulture); // Can be Int32 in older schemas
247247
var queue = reader.GetString(reader.GetOrdinal("Queue"));
248248

249249
if (reader.Read())

0 commit comments

Comments
 (0)