Skip to content

Merge pull request #338 from yurii-hunter/bugfix-migrations #14

Merge pull request #338 from yurii-hunter/bugfix-migrations

Merge pull request #338 from yurii-hunter/bugfix-migrations #14

GitHub Actions / Test results failed Dec 21, 2023 in 1s

Test results ❌

Tests failed

❌ tests/Hangfire.PostgreSql.Tests/TestResults/TestResults.trx

228 tests were completed in 65s with 225 passed, 3 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Hangfire.PostgreSql.Tests.ExpirationManagerFacts 10✅ 8s
Hangfire.PostgreSql.Tests.FirstClassQueueFeatureSupportTests 2✅ 288ms
Hangfire.PostgreSql.Tests.PersistentJobQueueProviderCollectionFacts 7✅ 11ms
Hangfire.PostgreSql.Tests.PostgreSqlConnectionFacts 80✅ 3❌ 2s
Hangfire.PostgreSql.Tests.PostgreSqlDistributedLockFacts 12✅ 20s
Hangfire.PostgreSql.Tests.PostgreSqlFetchedJobFacts 8✅ 59ms
Hangfire.PostgreSql.Tests.PostgreSqlInstallerFacts 2✅ 456ms
Hangfire.PostgreSql.Tests.PostgreSqlJobQueueFacts 26✅ 26s
Hangfire.PostgreSql.Tests.PostgreSqlMonitoringApiFacts 1✅ 17ms
Hangfire.PostgreSql.Tests.PostgreSqlStorageFacts 9✅ 9ms
Hangfire.PostgreSql.Tests.PostgreSqlStorageOptionsFacts 11✅ 4ms
Hangfire.PostgreSql.Tests.PostgreSqlWriteOnlyTransactionFacts 57✅ 5s

✅ Hangfire.PostgreSql.Tests.ExpirationManagerFacts

✅ Ctor_ThrowsAnException_WhenStorageIsNull
✅ Execute_Aggregates_CounterTable
✅ Execute_DoesNotRemoveEntries_WithFreshExpirationTime
✅ Execute_DoesNotRemoveEntries_WithNoExpirationTimeSet
✅ Execute_Processes_CounterTable
✅ Execute_Processes_HashTable
✅ Execute_Processes_JobTable
✅ Execute_Processes_ListTable
✅ Execute_Processes_SetTable
✅ Execute_RemovesOutdatedRecords

✅ Hangfire.PostgreSql.Tests.FirstClassQueueFeatureSupportTests

✅ EnqueueJobWithSpecificQueue_ShouldEnqueueCorrectlyAndJobMustBeProcessedInThatQueue
✅ HasFlag_ShouldReturnTrue_ForJobQueueProperty

✅ Hangfire.PostgreSql.Tests.PersistentJobQueueProviderCollectionFacts

✅ Add_ThrowsAnException_WhenProviderIsNull
✅ Add_ThrowsAnException_WhenQueuesCollectionIsNull
✅ Ctor_ThrowsAnException_WhenDefaultProviderIsNull
✅ Enumeration_ContainsAddedProvider
✅ Enumeration_IncludesTheDefaultProvider
✅ GetProvider_CanBeResolved_ByAnyQueue
✅ GetProvider_ReturnsTheDefaultProvider_WhenProviderCanNotBeResolvedByQueue

❌ Hangfire.PostgreSql.Tests.PostgreSqlConnectionFacts

✅ AcquireLock_ReturnsNonNullInstance
✅ AnnounceServer_CreatesOrUpdatesARecord
✅ AnnounceServer_ThrowsAnException_WhenContextIsNull
✅ AnnounceServer_ThrowsAnException_WhenServerIdIsNull
✅ CreateExpiredJob_CreatesAJobInTheStorage_AndSetsItsParameters
✅ CreateExpiredJob_EnlistsInTransaction(completeTransactionScope: False)
✅ CreateExpiredJob_EnlistsInTransaction(completeTransactionScope: True)
✅ CreateExpiredJob_ThrowsAnException_WhenJobIsNull
✅ CreateExpiredJob_ThrowsAnException_WhenParametersCollectionIsNull
✅ CreateWriteTransaction_ReturnsNonNullInstance
✅ Ctor_ThrowsAnException_WhenOptionsIsNull
✅ Ctor_ThrowsAnException_WhenStorageIsNull
✅ FetchNextJob_DelegatesItsExecution_ToTheQueue
✅ FetchNextJob_Throws_IfMultipleProvidersResolved
✅ GetAllEntriesFromHash_ReturnsAllKeysAndTheirValues
✅ GetAllEntriesFromHash_ReturnsNull_IfHashDoesNotExist
✅ GetAllEntriesFromHash_ThrowsAnException_WhenKeyIsNull
✅ GetAllItemsFromList_ReturnsAllItems_FromAGivenList
✅ GetAllItemsFromList_ReturnsAnEmptyList_WhenListDoesNotExist
✅ GetAllItemsFromList_ThrowsAnException_WhenKeyIsNull
✅ GetAllItemsFromSet_ReturnsAllItems
✅ GetAllItemsFromSet_ReturnsEmptyCollection_WhenKeyDoesNotExist
✅ GetAllItemsFromSet_ThrowsAnException_WhenKeyIsNull
✅ GetCounter_ReturnsSumOfValues_InCounterTable
✅ GetCounter_ReturnsZero_WhenKeyDoesNotExist
✅ GetCounter_ThrowsAnException_WhenKeyIsNull
✅ GetFirstByLowestScoreFromSet_ReturnsNull_WhenTheKeyDoesNotExist
✅ GetFirstByLowestScoreFromSet_ReturnsTheValueWithTheLowestScore
✅ GetFirstByLowestScoreFromSet_ThrowsAnException_ToScoreIsLowerThanFromScore
✅ GetFirstByLowestScoreFromSet_ThrowsAnException_WhenKeyIsNull
✅ GetHashCount_ReturnsNumber_OfHashFields
✅ GetHashCount_ReturnsZero_WhenKeyDoesNotExist
✅ GetHashCount_ThrowsAnException_WhenKeyIsNull
✅ GetHashTtl_ReturnsExpirationTimeForHash
✅ GetHashTtl_ReturnsNegativeValue_WhenHashDoesNotExist
✅ GetHashTtl_ThrowsAnException_WhenKeyIsNull
✅ GetJobData_ReturnsNull_WhenThereIsNoSuchJob
✅ GetJobData_ReturnsResult_WhenJobExists
✅ GetJobData_ThrowsAnException_WhenJobIdIsNull
✅ GetListCount_ReturnsTheNumberOfListElements
✅ GetListCount_ReturnsZero_WhenListDoesNotExist
✅ GetListCount_ThrowsAnException_WhenKeyIsNull
✅ GetListTtl_ReturnsExpirationTimeForList
✅ GetListTtl_ReturnsNegativeValue_WhenListDoesNotExist
✅ GetListTtl_ThrowsAnException_WhenKeyIsNull
✅ GetParameter_ReturnsNull_WhenParameterDoesNotExists
✅ GetParameter_ReturnsParameterValue_WhenJobExists
✅ GetParameter_ThrowsAnException_WhenJobIdIsNull
✅ GetParameter_ThrowsAnException_WhenNameIsNull
✅ GetRangeFromList_ReturnsAllEntries_WithinGivenBounds
✅ GetRangeFromList_ReturnsAnEmptyList_WhenListDoesNotExist
✅ GetRangeFromList_ThrowsAnException_WhenKeyIsNull
✅ GetRangeFromSet_ReturnsPagedElements
✅ GetRangeFromSet_ThrowsAnException_WhenKeyIsNull
✅ GetSetCount_ReturnsNumberOfElements_InASet
✅ GetSetCount_ReturnsZero_WhenSetDoesNotExist
✅ GetSetCount_ThrowsAnException_WhenKeyIsNull
✅ GetSetTtl_ReturnsExpirationTime_OfAGivenSet
✅ GetSetTtl_ReturnsNegativeValue_WhenSetDoesNotExist
✅ GetSetTtl_ThrowsAnException_WhenKeyIsNull
✅ GetStateData_ReturnsCorrectData
✅ GetStateData_ReturnsNull_IfThereIsNoSuchState
✅ GetStateData_ThrowsAnException_WhenJobIdIsNull
✅ GetValueFromHash_ReturnsNull_WhenHashDoesNotExist
✅ GetValueFromHash_ReturnsValue_OfAGivenField
✅ GetValueFromHash_ThrowsAnException_WhenKeyIsNull
❌ GetValueFromHash_ThrowsAnException_WhenNameIsNull
	Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
✅ Heartbeat_ThrowsAnException_WhenServerIdIsNull
✅ Heartbeat_ThrowsBackgroundServerGoneException_WhenServerDisappeared
❌ Heartbeat_UpdatesLastHeartbeat_OfTheServerWithGivenId
	Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
✅ RemoveServer_RemovesAServerRecord
✅ RemoveServer_ThrowsAnException_WhenServerIdIsNull
✅ RemoveTimedOutServers_DoItsWorkPerfectly
✅ RemoveTimedOutServers_ThrowsAnException_WhenTimeOutIsNegative
✅ SetParameter_CanAcceptNulls_AsValues
✅ SetParameter_ThrowsAnException_WhenJobIdIsNull
✅ SetParameter_ThrowsAnException_WhenNameIsNull
✅ SetParameter_UpdatesValue_WhenParameterWithTheGivenName_AlreadyExists
❌ SetParameters_CreatesNewParameter_WhenParameterWithTheGivenNameDoesNotExists
	Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
✅ SetRangeInHash_DoesNotThrowSerializationException
✅ SetRangeInHash_MergesAllRecords
✅ SetRangeInHash_ThrowsAnException_WhenKeyIsNull
✅ SetRangeInHash_ThrowsAnException_WhenKeyValuePairsArgumentIsNull

✅ Hangfire.PostgreSql.Tests.PostgreSqlDistributedLockFacts

✅ Acquire_AcquiresExclusiveApplicationLock_WithoutUseNativeDatabaseTransactions_OnSession
✅ Acquire_AcquiresExclusiveApplicationLock_WithUseNativeDatabaseTransactions_OnSession
✅ Acquire_AcquiresExclusiveApplicationLock_WithUseNativeDatabaseTransactions_OnSession_WhenDeadlockOccurs
✅ Acquire_ExpiredLockExists_LocksAnyway(useNativeDatabaseTransactions: False)
✅ Acquire_ExpiredLockExists_LocksAnyway(useNativeDatabaseTransactions: True)
✅ Acquire_ThrowsAnException_IfLockCanNotBeGranted_WithoutUseNativeDatabaseTransactions
✅ Acquire_ThrowsAnException_IfLockCanNotBeGranted_WithUseNativeDatabaseTransactions
✅ Acquire_ThrowsAnException_WhenConnectionIsNull
✅ Acquire_ThrowsAnException_WhenOptionsIsNull
✅ Acquire_ThrowsAnException_WhenResourceIsNullOrEmpty
✅ Dispose_ReleasesExclusiveApplicationLock_WithoutUseNativeDatabaseTransactions
✅ Dispose_ReleasesExclusiveApplicationLock_WithUseNativeDatabaseTransactions

✅ Hangfire.PostgreSql.Tests.PostgreSqlFetchedJobFacts

✅ Ctor_CorrectlySets_AllInstanceProperties
✅ Ctor_ThrowsAnException_WhenJobIdIsNull
✅ Ctor_ThrowsAnException_WhenQueueIsNull
✅ Ctor_ThrowsAnException_WhenStorageIsNull
✅ Dispose_SetsFetchedAtValueToNull_IfThereWereNoCallsToComplete
✅ RemoveFromQueue_DoesNotDelete_UnrelatedJobs
✅ RemoveFromQueue_ReallyDeletesTheJobFromTheQueue
✅ Requeue_SetsFetchedAtValueToNull

✅ Hangfire.PostgreSql.Tests.PostgreSqlInstallerFacts

✅ InstallingSchemaUpdatesVersionAndShouldNotThrowAnException
✅ InstallingSchemaWithCapitalsUpdatesVersionAndShouldNotThrowAnException

✅ Hangfire.PostgreSql.Tests.PostgreSqlJobQueueFacts

✅ Ctor_ThrowsAnException_WhenStorageIsNull
✅ Dequeue_ShouldFetchAJob_FromQueueWithHigherPriority
✅ Dequeue_ShouldFetchAJob_FromTheSpecifiedQueue_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ShouldFetchAJob_FromTheSpecifiedQueue_WithUseNativeDatabaseTransactions
✅ Dequeue_ShouldFetchATimedOutJobs_FromTheSpecifiedQueue_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ShouldFetchATimedOutJobs_FromTheSpecifiedQueue_WithUseNativeDatabaseTransactions
✅ Dequeue_ShouldFetchJobs_FromMultipleQueues_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ShouldFetchJobs_FromMultipleQueues_WithUseNativeDatabaseTransactions
✅ Dequeue_ShouldFetchJobs_OnlyFromSpecifiedQueues_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ShouldFetchJobs_OnlyFromSpecifiedQueues_WithUseNativeDatabaseTransactions
✅ Dequeue_ShouldLeaveJobInTheQueue_ButSetItsFetchedAtValue_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ShouldLeaveJobInTheQueue_ButSetItsFetchedAtValue_WithUseNativeDatabaseTransactions
✅ Dequeue_ShouldSetFetchedAt_OnlyForTheFetchedJob_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ShouldSetFetchedAt_OnlyForTheFetchedJob_WithUseNativeDatabaseTransactions
✅ Dequeue_ShouldThrowAnException_WhenQueuesCollectionIsEmpty_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ShouldThrowAnException_WhenQueuesCollectionIsEmpty_WithUseNativeDatabaseTransactions
✅ Dequeue_ShouldThrowAnException_WhenQueuesCollectionIsNull
✅ Dequeue_ShouldWaitIndefinitely_WhenThereAreNoJobs_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ShouldWaitIndefinitely_WhenThereAreNoJobs_WithUseNativeDatabaseTransactions
✅ Dequeue_ThrowsOperationCanceled_WhenCancellationTokenIsSetAtTheBeginning_WithoutUseNativeDatabaseTransactions
✅ Dequeue_ThrowsOperationCanceled_WhenCancellationTokenIsSetAtTheBeginning_WithUseNativeDatabaseTransactions
✅ Enqueue_AddsAJobToTheQueue_WithoutUseNativeDatabaseTransactions
✅ Enqueue_AddsAJobToTheQueue_WithUseNativeDatabaseTransactions
✅ Queues_Can_Dequeue_On_Notification
✅ Queues_Can_Dequeue_On_Signal
✅ Queues_Should_Support_Long_Queue_Names

✅ Hangfire.PostgreSql.Tests.PostgreSqlMonitoringApiFacts

✅ GetJobs_MixedCasing_ReturnsJob

✅ Hangfire.PostgreSql.Tests.PostgreSqlStorageFacts

✅ CanCreateAndOpenConnection_WithExistingConnectionFactory
✅ CanUseTransaction_WithDifferentTransactionIsolationLevel
✅ CreateAndOpenConnection_ThrowsAnException_WithExistingConnectionFactoryAndInvalidOptions
✅ Ctor_CanCreateSqlServerStorage_WithExistingConnection
✅ Ctor_CanCreateSqlServerStorage_WithExistingConnectionFactory
✅ Ctor_InitializesDefaultJobQueueProvider_AndPassesCorrectOptions
✅ Ctor_ThrowsAnException_WhenConnectionFactoryIsNull
✅ GetComponents_ReturnsAllNeededComponents
✅ GetMonitoringApi_ReturnsNonNullInstance

✅ Hangfire.PostgreSql.Tests.PostgreSqlStorageOptionsFacts

✅ Ctor_SetsTheDefaultOptions
✅ Set_DistributedLockTimeout_SetsTheValue
✅ Set_DistributedLockTimeout_ShouldThrowAnException_WhenGivenIntervalIsEqualToZero
✅ Set_DistributedLockTimeout_ShouldThrowAnException_WhenGivenIntervalIsNegative
✅ Set_InvisibilityTimeout_SetsTheValue
✅ Set_InvisibilityTimeout_ShouldThrowAnException_WhenGivenIntervalIsEqualToZero
✅ Set_InvisibilityTimeout_ShouldThrowAnException_WhenGivenIntervalIsNegative
✅ Set_QueuePollInterval_SetsTheValue
✅ Set_QueuePollInterval_SetsTheValue_WhenGivenIntervalIsTooLow_ButIgnored
✅ Set_QueuePollInterval_ShouldThrowAnException_WhenGivenIntervalIsEqualToZero_EvenIfIgnored
✅ Set_QueuePollInterval_ShouldThrowAnException_WhenGivenIntervalIsTooLow

✅ Hangfire.PostgreSql.Tests.PostgreSqlWriteOnlyTransactionFacts

✅ AddJobState_JustAddsANewRecordInATable
✅ AddRangeToSet_AddsAllItems_ToAGivenSet
✅ AddRangeToSet_ThrowsAnException_WhenItemsValueIsNull
✅ AddRangeToSet_ThrowsAnException_WhenKeyIsNull
✅ AddToQueue_AddsAJobToTheQueue_UsingStorageConnection_WithTransactionScopeEnlistment
✅ AddToQueue_CallsEnqueue_OnTargetPersistentQueue
✅ AddToSet_AddsARecord_IfThereIsNo_SuchKeyAndValue
✅ AddToSet_AddsARecord_WhenKeyIsExists_ButValuesAreDifferent
✅ AddToSet_DoesNotAddARecord_WhenBothKeyAndValueAreExist
✅ AddToSet_DoesNotFailWithConcurrencyError_WhenRunningMultipleThreads
✅ AddToSet_WithScore_AddsARecordWithScore_WhenBothKeyAndValueAreNotExist
✅ AddToSet_WithScore_UpdatesAScore_WhenBothKeyAndValueAreExist
✅ Ctor_ThrowsAnException_IfDedicatedConnectionFuncIsNull
✅ Ctor_ThrowsAnException_IfStorageIsNull
✅ DecrementCounter_AddsRecordToCounterTable_WithNegativeValue
✅ DecrementCounter_WithExistingKey_AddsAnotherRecord
✅ DecrementCounter_WithExpiry_AddsARecord_WithExpirationTimeSet
✅ ExpireHash_SetsExpirationTimeOnAHash_WithGivenKey
✅ ExpireHash_ThrowsAnException_WhenKeyIsNull
✅ ExpireJob_SetsJobExpirationData
✅ ExpireList_SetsExpirationTime_OnAList_WithGivenKey
✅ ExpireList_ThrowsAnException_WhenKeyIsNull
✅ ExpireSet_SetsExpirationTime_OnASet_WithGivenKey
✅ ExpireSet_ThrowsAnException_WhenKeyIsNull
✅ IncrementCounter_AddsRecordToCounterTable_WithPositiveValue
✅ IncrementCounter_WithExistingKey_AddsAnotherRecord
✅ IncrementCounter_WithExpiry_AddsARecord_WithExpirationTimeSet
✅ InsertToList_AddsAnotherRecord_WhenBothKeyAndValueAreExist
✅ InsertToList_AddsARecord_WithGivenValues
✅ PersistHash_ClearsExpirationTime_OnAGivenHash
✅ PersistHash_ThrowsAnException_WhenKeyIsNull
✅ PersistJob_ClearsTheJobExpirationData
✅ PersistList_ClearsExpirationTime_OnAGivenHash
✅ PersistList_ThrowsAnException_WhenKeyIsNull
✅ PersistSet_ClearsExpirationTime_OnAGivenHash
✅ PersistSet_ThrowsAnException_WhenKeyIsNull
✅ RemoveFromList_DoesNotRemoveRecords_WithSameKey_ButDifferentValue
✅ RemoveFromList_DoesNotRemoveRecords_WithSameValue_ButDifferentKey
✅ RemoveFromList_RemovesAllRecords_WithGivenKeyAndValue
✅ RemoveFromSet_DoesNotRemoveRecord_WithSameKey_AndDifferentValue
✅ RemoveFromSet_DoesNotRemoveRecord_WithSameValue_AndDifferentKey
✅ RemoveFromSet_RemovesARecord_WithGivenKeyAndValue
✅ RemoveHash_RemovesAllHashRecords
✅ RemoveHash_ThrowsAnException_WhenKeyIsNull
✅ RemoveSet_RemovesASet_WithAGivenKey
✅ RemoveSet_ThrowsAnException_WhenKeyIsNull
✅ SetJobState_AppendsAStateAndSetItToTheJob
✅ SetJobState_EnlistsInAmbientTransaction(completeTransactionScope: False)
✅ SetJobState_EnlistsInAmbientTransaction(completeTransactionScope: True)
✅ SetRangeInHash_MergesAllRecords
✅ SetRangeInHash_ThrowsAnException_WhenKeyIsNull
✅ SetRangeInHash_ThrowsAnException_WhenKeyValuePairsArgumentIsNull
✅ TrimList_RemovesAllRecords_IfStartFromGreaterThanEndingAt
✅ TrimList_RemovesAllRecords_WhenStartingFromValue_GreaterThanMaxElementIndex
✅ TrimList_RemovesRecords_OnlyOfAGivenKey
✅ TrimList_RemovesRecordsToEnd_IfKeepAndingAt_GreaterThanMaxElementIndex
✅ TrimList_TrimsAList_ToASpecifiedRange

Annotations

Check failure on line 42 in tests/Hangfire.PostgreSql.Tests/Utils/PostgreSqlTestObjectsInitializer.cs

See this annotation in the file changed.

@github-actions github-actions / Test results

Hangfire.PostgreSql.Tests.PostgreSqlConnectionFacts ► GetValueFromHash_ThrowsAnException_WhenNameIsNull

Failed test found in:
  tests/Hangfire.PostgreSql.Tests/TestResults/TestResults.trx
Error:
  Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
Raw output
Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
   at Npgsql.Internal.NpgsqlConnector.<ReadMessage>g__ReadMessageLong|213_0(NpgsqlConnector connector, Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
   at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
   at Npgsql.NpgsqlDataReader.NextResult()
   at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteNonQuery(Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteNonQuery()
   at Hangfire.PostgreSql.Tests.Utils.PostgreSqlTestObjectsInitializer.CleanTables(NpgsqlConnection connection) in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/PostgreSqlTestObjectsInitializer.cs:line 42
   at Hangfire.PostgreSql.Tests.Utils.CleanDatabaseAttribute.CleanTables() in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/CleanDatabaseAttribute.cs:line 63
   at Hangfire.PostgreSql.Tests.Utils.CleanDatabaseAttribute.Before(MethodInfo methodUnderTest) in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/CleanDatabaseAttribute.cs:line 25

Check failure on line 42 in tests/Hangfire.PostgreSql.Tests/Utils/PostgreSqlTestObjectsInitializer.cs

See this annotation in the file changed.

@github-actions github-actions / Test results

Hangfire.PostgreSql.Tests.PostgreSqlConnectionFacts ► Heartbeat_UpdatesLastHeartbeat_OfTheServerWithGivenId

Failed test found in:
  tests/Hangfire.PostgreSql.Tests/TestResults/TestResults.trx
Error:
  Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
Raw output
Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
   at Npgsql.Internal.NpgsqlConnector.<ReadMessage>g__ReadMessageLong|213_0(NpgsqlConnector connector, Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
   at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
   at Npgsql.NpgsqlDataReader.NextResult()
   at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteNonQuery(Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteNonQuery()
   at Hangfire.PostgreSql.Tests.Utils.PostgreSqlTestObjectsInitializer.CleanTables(NpgsqlConnection connection) in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/PostgreSqlTestObjectsInitializer.cs:line 42
   at Hangfire.PostgreSql.Tests.Utils.CleanDatabaseAttribute.CleanTables() in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/CleanDatabaseAttribute.cs:line 63
   at Hangfire.PostgreSql.Tests.Utils.CleanDatabaseAttribute.Before(MethodInfo methodUnderTest) in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/CleanDatabaseAttribute.cs:line 25

Check failure on line 42 in tests/Hangfire.PostgreSql.Tests/Utils/PostgreSqlTestObjectsInitializer.cs

See this annotation in the file changed.

@github-actions github-actions / Test results

Hangfire.PostgreSql.Tests.PostgreSqlConnectionFacts ► SetParameters_CreatesNewParameter_WhenParameterWithTheGivenNameDoesNotExists

Failed test found in:
  tests/Hangfire.PostgreSql.Tests/TestResults/TestResults.trx
Error:
  Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
Raw output
Npgsql.PostgresException : 40001: could not serialize access due to concurrent delete
   at Npgsql.Internal.NpgsqlConnector.<ReadMessage>g__ReadMessageLong|213_0(NpgsqlConnector connector, Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)
   at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)
   at Npgsql.NpgsqlDataReader.NextResult()
   at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior, Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteNonQuery(Boolean async, CancellationToken cancellationToken)
   at Npgsql.NpgsqlCommand.ExecuteNonQuery()
   at Hangfire.PostgreSql.Tests.Utils.PostgreSqlTestObjectsInitializer.CleanTables(NpgsqlConnection connection) in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/PostgreSqlTestObjectsInitializer.cs:line 42
   at Hangfire.PostgreSql.Tests.Utils.CleanDatabaseAttribute.CleanTables() in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/CleanDatabaseAttribute.cs:line 63
   at Hangfire.PostgreSql.Tests.Utils.CleanDatabaseAttribute.Before(MethodInfo methodUnderTest) in /home/runner/work/Hangfire.PostgreSql/Hangfire.PostgreSql/tests/Hangfire.PostgreSql.Tests/Utils/CleanDatabaseAttribute.cs:line 25