From 245d6e9bbcf27f5992f5bb815be7cf94e1b1cfb1 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Fri, 4 Dec 2020 12:23:45 +0100 Subject: [PATCH] Simplify queries thanks to fix in YesSQL --- .../Elsa.Activities.Timers/Jobs/RunWorkflowJob.cs | 15 ++++----------- .../WorkflowInstanceManagerExtensions.cs | 14 ++------------ 2 files changed, 6 insertions(+), 23 deletions(-) diff --git a/src/activities/Elsa.Activities.Timers/Jobs/RunWorkflowJob.cs b/src/activities/Elsa.Activities.Timers/Jobs/RunWorkflowJob.cs index 9f4d9eb9b..e73a261a5 100644 --- a/src/activities/Elsa.Activities.Timers/Jobs/RunWorkflowJob.cs +++ b/src/activities/Elsa.Activities.Timers/Jobs/RunWorkflowJob.cs @@ -59,17 +59,10 @@ namespace Elsa.Activities.Timers.Jobs private async Task GetWorkflowIsAlreadyExecutingAsync(string? tenantId, string workflowDefinitionId, CancellationToken cancellationToken) { - // See https://github.com/sebastienros/yessql/issues/298 - - Expression> query = tenantId == null - ? index => - index.WorkflowDefinitionId == workflowDefinitionId - && index.TenantId == null - && (index.WorkflowStatus == WorkflowStatus.Running || index.WorkflowStatus == WorkflowStatus.Suspended) - : index => - index.WorkflowDefinitionId == workflowDefinitionId - && index.TenantId == tenantId - && (index.WorkflowStatus == WorkflowStatus.Running || index.WorkflowStatus == WorkflowStatus.Suspended); + Expression> query = index => + index.WorkflowDefinitionId == workflowDefinitionId + && index.TenantId == tenantId + && (index.WorkflowStatus == WorkflowStatus.Running || index.WorkflowStatus == WorkflowStatus.Suspended); var workflowInstance = await _workflowInstanceManager.Query(query).FirstOrDefaultAsync(); return workflowInstance != null; diff --git a/src/core/Elsa.Core/Extensions/WorkflowInstanceManagerExtensions.cs b/src/core/Elsa.Core/Extensions/WorkflowInstanceManagerExtensions.cs index 28e938cda..1b48622d2 100644 --- a/src/core/Elsa.Core/Extensions/WorkflowInstanceManagerExtensions.cs +++ b/src/core/Elsa.Core/Extensions/WorkflowInstanceManagerExtensions.cs @@ -24,12 +24,7 @@ namespace Elsa.Extensions WorkflowStatus workflowStatus, CancellationToken cancellationToken = default) { - // See: https://github.com/sebastienros/yessql/issues/298 - Expression> query = tenantId == null - ? x => x.WorkflowDefinitionId == workflowDefinitionId && x.TenantId == null && x.WorkflowStatus == workflowStatus - : x => x.WorkflowDefinitionId == workflowDefinitionId && x.TenantId == tenantId && x.WorkflowStatus == workflowStatus; - - return manager.Query(query).ListAsync(); + return manager.Query(x => x.WorkflowDefinitionId == workflowDefinitionId && x.TenantId == tenantId && x.WorkflowStatus == workflowStatus).ListAsync(); } public static Task> ListByDefinitionAndStatusAsync( @@ -45,12 +40,7 @@ namespace Elsa.Extensions string? tenantId, CancellationToken cancellationToken = default) { - // See: https://github.com/sebastienros/yessql/issues/298 - Expression> query = tenantId == null - ? x => x.WorkflowDefinitionId == workflowDefinitionId && x.TenantId == null - : x => x.WorkflowDefinitionId == workflowDefinitionId && x.TenantId == tenantId; - - return manager.Query(query).ListAsync(); + return manager.Query(x => x.WorkflowDefinitionId == workflowDefinitionId && x.TenantId == tenantId).ListAsync(); } public static Task> ListByDefinitionAsync(