Skip to content

fix: use dataretention option for results ttl in database #732

fix: use dataretention option for results ttl in database

fix: use dataretention option for results ttl in database #732

This check has been archived and is scheduled for deletion. Learn more about checks retention
GitHub Actions / Test - windows Adaptors/MongoDB/tests succeeded Jul 28, 2023 in 1s

Test - windows Adaptors/MongoDB/tests ✅

Tests passed successfully

✅ Adaptors/MongoDB/tests/TestResults/test-results.trx

257 tests were completed in 371s with 257 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
ArmoniK.Core.Adapters.MongoDB.Tests.AuthenticationTableTest 32✅ 63ms
ArmoniK.Core.Adapters.MongoDB.Tests.BsonSerializerTest 13✅ 794ms
ArmoniK.Core.Adapters.MongoDB.Tests.ExpressionsBuildersFieldFilterExpressionTests 20✅ 70ms
ArmoniK.Core.Adapters.MongoDB.Tests.IndexTest 6✅ 9s
ArmoniK.Core.Adapters.MongoDB.Tests.InjectionTests 21✅ 134ms
ArmoniK.Core.Adapters.MongoDB.Tests.ObjectStorageTests 7✅ 10s
ArmoniK.Core.Adapters.MongoDB.Tests.PartitionTableTests 22✅ 71s
ArmoniK.Core.Adapters.MongoDB.Tests.ResultTableTests 30✅ 123s
ArmoniK.Core.Adapters.MongoDB.Tests.ResultWatcherTests 4✅ 17s
ArmoniK.Core.Adapters.MongoDB.Tests.SessionProviderTests 2✅ 2s
ArmoniK.Core.Adapters.MongoDB.Tests.SessionTableTests 18✅ 18s
ArmoniK.Core.Adapters.MongoDB.Tests.TaskTableTests 79✅ 87s
ArmoniK.Core.Adapters.MongoDB.Tests.TaskWatcherTests 3✅ 10s

✅ ArmoniK.Core.Adapters.MongoDB.Tests.AuthenticationTableTest

✅ GetIdentityFromCnAndFingerprintShouldFail("CNUser1","Fingerprint2")
✅ GetIdentityFromCnAndFingerprintShouldFail("CNUser6","Fingerprint6")
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUser1","Fingerprint1",0)
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUser2","Fingerprint2",1)
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUser2","Fingerprint3",3)
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUser2","Fingerprint7",1)
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUser2","FingerprintDontCare",3)
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUser3","Fingerprint3",1)
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUser4","Fingerprint4",2)
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUser5","Fingerprint5",3)
✅ GetIdentityFromCnAndFingerprintShouldSucceed("CNUserCommon","FingerprintDontCare",2)
✅ GetIdentityFromIdShouldFail("UserIdDontExist")
✅ GetIdentityFromIdShouldSucceed(0,"User1")
✅ GetIdentityFromIdShouldSucceed(1,"User2")
✅ GetIdentityFromNameShouldFail("UserDontExist")
✅ GetIdentityFromNameShouldSucceed("User1",0)
✅ GetIdentityFromNameShouldSucceed("User2",1)
✅ InitShouldSucceed
✅ UserHasAllClaimsOfItsRoles(UserData { UserId = 1f087b121f087b121f087b12, Username = User2, Roles = System.String[] })
✅ UserHasAllClaimsOfItsRoles(UserData { UserId = 4bd456ab4bd456ab4bd456ab, Username = User5, Roles = System.String[] })
✅ UserHasAllClaimsOfItsRoles(UserData { UserId = 4fed210a4fed210a4fed210a, Username = User3, Roles = System.String[] })
✅ UserHasAllClaimsOfItsRoles(UserData { UserId = 534120b4534120b4534120b4, Username = User1, Roles = System.String[] })
✅ UserHasAllClaimsOfItsRoles(UserData { UserId = 7d5dc73d7d5dc73d7d5dc73d, Username = User4, Roles = System.String[] })
✅ UserHasClaimShouldMatch("User1","category1:name1",True)
✅ UserHasClaimShouldMatch("User1","category1:name2",True)
✅ UserHasClaimShouldMatch("User1","category1:name3",False)
✅ UserHasClaimShouldMatch("User2","category1:name2:all",True)
✅ UserHasClaimShouldMatch("User2","category1:name2",True)
✅ UserHasRoleShouldMatch("User1","Role1",True)
✅ UserHasRoleShouldMatch("User1","Role2",False)
✅ UserHasRoleShouldMatch("User2","Role1",True)
✅ UserHasRoleShouldMatch("User2","RoleDontExist",False)

✅ ArmoniK.Core.Adapters.MongoDB.Tests.BsonSerializerTest

✅ InitializeAuthDataModelMapping
✅ InitializeResultDataModelMapping
✅ InitializeRoleDataModelMapping
✅ InitializeSessionDataModelMapping
✅ InitializeTaskDataModelMapping
✅ InitializeUserDataModelMapping
✅ SerializeAuthDataModel
✅ SerializeResultDataModel
✅ SerializeRoleDataModel
✅ SerializeSessionDataModel
✅ SerializeTaskDataModel
✅ SerializeUserAuthenticationResult
✅ SerializeUserDataModel

✅ ArmoniK.Core.Adapters.MongoDB.Tests.ExpressionsBuildersFieldFilterExpressionTests

✅ ShouldExcludeMultipleStatus
✅ ShouldExcludeMultipleTask
✅ ShouldExcludeSession
✅ ShouldExcludeStatus
✅ ShouldExcludeTask
✅ ShouldIncludeOtherMultipleStatus
✅ ShouldIncludeOtherMultipleTask
✅ ShouldIncludeOtherSession
✅ ShouldIncludeOtherStatus
✅ ShouldIncludeOtherTask
✅ ShouldRecognizeMultipleStatus
✅ ShouldRecognizeMultipleTask
✅ ShouldRecognizeSession
✅ ShouldRecognizeStatus
✅ ShouldRecognizeTask
✅ ShouldRejectOtherMultipleStatus
✅ ShouldRejectOtherMultipleTask
✅ ShouldRejectOtherSession
✅ ShouldRejectOtherStatus
✅ ShouldRejectOtherTask

✅ ArmoniK.Core.Adapters.MongoDB.Tests.IndexTest

✅ CombinedIndexCreationShouldSucceed
✅ GenericIndexCreationShouldSucceed
✅ IndexCreation2ShouldSucceed
✅ IndexCreationShouldSucceed
✅ IndexCreationWithMaxExpireShouldSucceed
✅ IndexCreationWithNullExpireShouldSucceed

✅ ArmoniK.Core.Adapters.MongoDB.Tests.InjectionTests

✅ BuildObjectStorage
✅ BuildTableStorage
✅ MongoDbOptionsNotNull
✅ MongoDbOptionsValueNotNull
✅ ObjectOptionsNotNull
✅ ObjectStorageFactoryHasBindingToObjectStorage
✅ ReadMongoDbCaFile
✅ ReadMongoDbCredentialsPath
✅ ReadMongoDbDatabaseName
✅ ReadMongoDbDataRetention
✅ ReadMongoDbHost
✅ ReadMongoDbPassword
✅ ReadMongoDbPort
✅ ReadMongoDbTls
✅ ReadMongoDbUser
✅ ReadObjectChunkSize
✅ ReadTablePollingMaxDelay
✅ ReadTablePollingMinDelay
✅ TableOptionsNotNull
✅ TableStorageHasPollingDelayMax
✅ TableStorageHasPollingDelayMin

✅ ArmoniK.Core.Adapters.MongoDB.Tests.ObjectStorageTests

✅ AddValuesAsyncWithoutChunkShouldWork
✅ DeleteKeysAndGetValuesAsyncShouldFail
✅ EmptyPayload
✅ GetValuesAsyncShouldFail
✅ InitShouldSucceed
✅ Payload2ShouldBeEqual
✅ PayloadShouldBeEqual

✅ ArmoniK.Core.Adapters.MongoDB.Tests.PartitionTableTests

✅ ArePartitionExistingAsyncShouldReturnFalse
✅ ArePartitionExistingAsyncShouldSucceed
✅ DeleteAlreadyDeletedTaskAsyncShouldThrowException
✅ DeleteTaskAsyncShouldThrowException
✅ InitShouldSucceed
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_ID" } }, "filterString": { "value": "PartitionId_false" } } false)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_ID" } }, "filterString": { "value": "PartitionId2" } } true)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_PARENT_PARTITION_IDS" } }, "filterArray": { "value": "AnotherParentPartitionId" } } false)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_PARENT_PARTITION_IDS" } }, "filterArray": { "value": "AnotherParentPartitionId", "operator": "FILTER_ARRAY_OPERATOR_NOT_CONTAINS" } } true)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_PARENT_PARTITION_IDS" } }, "filterArray": { "value": "ParentPartitionId" } } true)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_POD_MAX" } }, "filterNumber": { "value": "13" } } true)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_POD_MAX" } }, "filterNumber": { "value": "2" } } false)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_POD_RESERVED" } }, "filterNumber": { "value": "1" } } true)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_POD_RESERVED" } }, "filterNumber": { "value": "2" } } false)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_PREEMPTION_PERCENTAGE" } }, "filterNumber": { "value": "2" } } false)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_PREEMPTION_PERCENTAGE" } }, "filterNumber": { "value": "50" } } true)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_PRIORITY" } }, "filterNumber": { "value": "1" } } true)
✅ ListPartitionFilter({ "field": { "partitionRawField": { "field": "PARTITION_RAW_ENUM_FIELD_PRIORITY" } }, "filterNumber": { "value": "2" } } false)
✅ ListPartitionsContainsShouldSucceed
✅ ListPartitionsEmptyResultShouldSucceed
✅ ReadPartitionAsyncShouldSucceed
✅ ReadTaskAsyncShouldThrowException

✅ ArmoniK.Core.Adapters.MongoDB.Tests.ResultTableTests

✅ AbortResultsShouldFail
✅ AbortResultsShouldSucceed
✅ AddDependentNotExistingResultShouldThrow
✅ AddDependentShouldSucceed
✅ ChangeResultOwnershipShouldSucceed
✅ CompleteResultShouldSucceed
✅ CompleteResultShouldThrow
✅ CreateShouldFail
✅ CreateShouldSucceed
✅ DeleteResultShouldRemoveOne
✅ DeleteResultsShouldRemoveAll
✅ DeleteUnknownResultShouldFail
✅ GetDependentsShouldSucceed
✅ GetDependentsShouldThrow
✅ GetEmptyDependentsShouldSucceed
✅ GetNotExistingResultStatusShouldSucceed
✅ GetResultBench
✅ GetResultsBench
✅ GetResultStatusShouldSucceed
✅ InitShouldSucceed
✅ ListResultsAsyncFilterResultStatusAndSessionIdLimit1ShouldSucceed
✅ ListResultsAsyncFilterResultStatusAndSessionIdShouldSucceed
✅ ListSessionAsyncNoFilterShouldSucceed
✅ ResultsAreAvailableShouldReturnAborted
✅ ResultsAreAvailableShouldReturnEmpty
✅ ResultsAreAvailableShouldSucceed
✅ SetResultShouldSucceed
✅ SetResultSmallPayloadShouldSucceed
✅ SetTaskOwnershipShouldFail
✅ SetTaskOwnershipShouldSucceed

✅ ArmoniK.Core.Adapters.MongoDB.Tests.ResultWatcherTests

✅ InitShouldSucceed
✅ WatchNewResultShouldSucceed
✅ WatchResultOwnerUpdateShouldSucceed
✅ WatchResultStatusUpdateShouldSucceed

✅ ArmoniK.Core.Adapters.MongoDB.Tests.SessionProviderTests

✅ SessionProviderGetBeforeInitShouldThrow
✅ SessionProviderInitShouldSucceed

✅ ArmoniK.Core.Adapters.MongoDB.Tests.SessionTableTests

✅ CancelCancelledSessionAsyncShouldFail
✅ CancelSessionAsyncShouldFail
✅ CancelSessionAsyncShouldSucceed
✅ DeleteSessionAsyncShouldFail
✅ DeleteSessionAsyncShouldSucceed
✅ GetDefaultTaskOptionAsyncShouldFail
✅ GetDefaultTaskOptionAsyncShouldSucceed
✅ InitShouldSucceed
✅ IsSessionCancelledAsyncShouldFail
✅ IsSessionCancelledAsyncShouldSucceed
✅ ListSessionAsyncFilterApplicationNameAndSessionIdShouldSucceed
✅ ListSessionAsyncFilterApplicationNameAndStatusShouldSucceed
✅ ListSessionAsyncFilterApplicationNameShouldSucceed
✅ ListSessionAsyncNoFilterShouldSucceed
✅ ListSessionAsyncShouldFail
✅ ListSessionAsyncShouldSucceed
✅ ListSessionAsyncShouldSucceed2
✅ ListSessionAsyncTaskOptionsOptions

✅ ArmoniK.Core.Adapters.MongoDB.Tests.TaskTableTests

✅ AcquireAcquiredTaskShouldReturnSame
✅ AcquireCreatingTaskShouldFail
✅ AcquireTaskShouldFail
✅ AcquireTaskShouldSucceed
✅ CancelSessionAsyncShouldSucceed
✅ CancelTasksAsyncEmptyListShouldSucceed
✅ CancelTasksAsyncShouldNotChangeTheGivenStatus(Cancelled)
✅ CancelTasksAsyncShouldNotChangeTheGivenStatus(Cancelling)
✅ CancelTasksAsyncShouldNotChangeTheGivenStatus(Completed)
✅ CancelTasksAsyncShouldNotChangeTheGivenStatus(Error)
✅ CancelTasksShouldSucceed
✅ CountAllTasksAsyncShouldSucceed
✅ CountPartitionTasksAsyncShouldSucceed
✅ CountTasksAsyncShouldSucceed
✅ DeleteTaskShouldFail
✅ DeleteTaskShouldSucceed
✅ FinalizeTaskCreationShouldFail
✅ FinalizeTaskCreationShouldSucceed
✅ FindTasksAsyncContainsShouldSucceed
✅ FindTasksAsyncStatusShouldSucceed(Completed,1)
✅ FindTasksAsyncStatusShouldSucceed(Processing,2)
✅ GetExpectedOutputKeysShouldSucceed
✅ GetParentTaskIdsShouldFail
✅ GetParentTaskIdsShouldSucceed
✅ GetTaskExpectedOutputKeysShouldFail
✅ GetTaskExpectedOutputKeysShouldSucceed
✅ GetTaskOutputShouldFail
✅ GetTaskOutputShouldSucceed
✅ InitShouldSucceed
✅ IsTaskCanceledShouldFail
✅ IsTaskCanceledShouldSucceed
✅ ListApplicationFromTasksShouldSucceed
✅ ListApplicationFromTasksSortShouldSucceed
✅ ListTaskEmptyResultShouldSucceed
✅ ListTaskFilter({ "field": { "taskOptionField": { "field": "TASK_OPTION_ENUM_FIELD_MAX_RETRIES" } }, "filterNumber": { "value": "5", "operator": "FILTER_NUMBER_OPERATOR_LESS_THAN_OR_EQUAL" } } true)
✅ ListTaskFilter({ "field": { "taskOptionField": { "field": "TASK_OPTION_ENUM_FIELD_MAX_RETRIES" } }, "filterNumber": { "value": "5", "operator": "FILTER_NUMBER_OPERATOR_LESS_THAN" } } false)
✅ ListTaskFilter({ "field": { "taskOptionField": { "field": "TASK_OPTION_ENUM_FIELD_PARTITION_ID" } }, "filterString": { "value": "BadPartitionId" } } false)
✅ ListTaskFilter({ "field": { "taskOptionField": { "field": "TASK_OPTION_ENUM_FIELD_PARTITION_ID" } }, "filterString": { "value": "part1" } } true)
✅ ListTaskFilter({ "field": { "taskOptionGenericField": { "field": "key1" } }, "filterString": { "value": "val1" } } true)
✅ ListTaskFilter({ "field": { "taskOptionGenericField": { "field": "key1" } }, "filterString": { "value": "val1", "operator": "FILTER_STRING_OPERATOR_CONTAINS" } } true)
✅ ListTaskFilter({ "field": { "taskOptionGenericField": { "field": "key1" } }, "filterString": { "value": "val1", "operator": "FILTER_STRING_OPERATOR_ENDS_WITH" } } true)
✅ ListTaskFilter({ "field": { "taskOptionGenericField": { "field": "key1" } }, "filterString": { "value": "val1", "operator": "FILTER_STRING_OPERATOR_STARTS_WITH" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_CREATED_AT" } }, "filterDate": { "value": "2020-03-15T00:00:00Z", "operator": "FILTER_DATE_OPERATOR_AFTER_OR_EQUAL" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_CREATED_AT" } }, "filterDate": { "value": "2020-03-15T00:00:00Z", "operator": "FILTER_DATE_OPERATOR_AFTER" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_CREATED_AT" } }, "filterDate": { "value": "2020-03-15T00:00:00Z", "operator": "FILTER_DATE_OPERATOR_BEFORE_OR_EQUAL" } } false)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_CREATED_AT" } }, "filterDate": { "value": "2020-03-15T00:00:00Z", "operator": "FILTER_DATE_OPERATOR_BEFORE" } } false)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_SESSION_ID" } }, "filterString": { "value": "BadSessionId" } } false)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_SESSION_ID" } }, "filterString": { "value": "BadSessionId", "operator": "FILTER_STRING_OPERATOR_NOT_CONTAINS" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_SESSION_ID" } }, "filterString": { "value": "SessionId" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_SESSION_ID" } }, "filterString": { "value": "SessionId", "operator": "FILTER_STRING_OPERATOR_CONTAINS" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_SESSION_ID" } }, "filterString": { "value": "SessionId", "operator": "FILTER_STRING_OPERATOR_ENDS_WITH" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_SESSION_ID" } }, "filterString": { "value": "SessionId", "operator": "FILTER_STRING_OPERATOR_STARTS_WITH" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_STARTED_AT" } }, "filterDate": { } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_STARTED_AT" } }, "filterDate": { } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_STATUS" } }, "filterStatus": { "value": "TASK_STATUS_CANCELLING" } } false)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_STATUS" } }, "filterStatus": { "value": "TASK_STATUS_CANCELLING", "operator": "FILTER_STATUS_OPERATOR_NOT_EQUAL" } } true)
✅ ListTaskFilter({ "field": { "taskSummaryField": { "field": "TASK_SUMMARY_ENUM_FIELD_STATUS" } }, "filterStatus": { "value": "TASK_STATUS_COMPLETED" } } true)
✅ ListTaskShouldSucceed
✅ ListTaskWithListInRequestShouldSucceed
✅ ListTaskWithRequestOrderByTaskOptionsOptionsShouldSucceed
✅ ListTaskWithRequestShouldSucceed
✅ OptionsAreEqual
✅ PayloadIdAfterRetryShouldBeCorrect
✅ ReadTaskAsyncShouldFail
✅ ReadTaskAsyncShouldSucceed
✅ ReleaseTaskShouldSucceed
✅ RemoveRemainingDataDependenciesDepDoesNotExistShouldSucceed
✅ RemoveRemainingDataDependenciesShouldSucceed
✅ RetryTaskShouldSucceed
✅ SetTaskCanceledAsyncShouldSucceed
✅ SetTaskErrorAsyncShouldSucceed
✅ SetTaskSuccessAsyncShouldSucceed
✅ StartTaskShouldFail
✅ StartTaskShouldSucceed
✅ UpdateAllTaskStatusAsyncShouldFailOnSomeStatus(Cancelled)
✅ UpdateAllTaskStatusAsyncShouldFailOnSomeStatus(Completed)
✅ UpdateAllTaskStatusAsyncShouldFailOnSomeStatus(Error)
✅ UpdateAllTaskStatusAsyncShouldSucceed
✅ UpdateAllTaskStatusAsyncShouldSucceedIfNoStatusGiven

✅ ArmoniK.Core.Adapters.MongoDB.Tests.TaskWatcherTests

✅ InitShouldSucceed
✅ WatchNewResultShouldSucceed
✅ WatchResultStatusUpdateShouldSucceed