From fb98a2157cf65bd29a990ae6bf43e4f354443ae8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ognjen=20Kati=C4=87?=
<44910579+ognjenkatic@users.noreply.github.com>
Date: Thu, 26 Oct 2023 10:25:55 +0200
Subject: [PATCH 1/5] bump versions
---
src/ConductorSharp.Client/ConductorSharp.Client.csproj | 2 +-
src/ConductorSharp.Engine/ConductorSharp.Engine.csproj | 2 +-
src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/ConductorSharp.Client/ConductorSharp.Client.csproj b/src/ConductorSharp.Client/ConductorSharp.Client.csproj
index 8acd12a6..92aab941 100644
--- a/src/ConductorSharp.Client/ConductorSharp.Client.csproj
+++ b/src/ConductorSharp.Client/ConductorSharp.Client.csproj
@@ -6,7 +6,7 @@
Codaxy
Codaxy
ConductorSharp.Client
- 2.3.0
+ 2.3.1
Client library for Netflix Conductor, with some additional quality of life features.
https://github.com/codaxy/conductor-sharp
netflix;conductor
diff --git a/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj b/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
index e70a043d..c9c47d0b 100644
--- a/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
+++ b/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
@@ -6,7 +6,7 @@
Codaxy
Codaxy
ConductorSharp.Engine
- 2.3.0
+ 2.3.1
Client library for Netflix Conductor, with some additional quality of life features.
https://github.com/codaxy/conductor-sharp
netflix;conductor
diff --git a/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj b/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
index ecef241b..405cee0e 100644
--- a/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
+++ b/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
@@ -6,7 +6,7 @@
False
Codaxy
Codaxy
- 2.3.0
+ 2.3.1
From 15afbac1f636286d81a9aa6cc8a272acb95fcb00 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bojan=20Malini=C4=87?=
<94437690+boma96@users.noreply.github.com>
Date: Thu, 25 Jan 2024 16:01:36 +0100
Subject: [PATCH 2/5] Improve execution manager logging and parsing (#179)
* Improve exception logging, set input data to null after it is parsed
* Bump version
---
src/ConductorSharp.Client/ConductorSharp.Client.csproj | 2 +-
src/ConductorSharp.Engine/ConductorSharp.Engine.csproj | 2 +-
src/ConductorSharp.Engine/ExecutionManager.cs | 8 ++++++--
.../ConductorSharp.Patterns.csproj | 2 +-
4 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/ConductorSharp.Client/ConductorSharp.Client.csproj b/src/ConductorSharp.Client/ConductorSharp.Client.csproj
index 92aab941..e36a6b08 100644
--- a/src/ConductorSharp.Client/ConductorSharp.Client.csproj
+++ b/src/ConductorSharp.Client/ConductorSharp.Client.csproj
@@ -6,7 +6,7 @@
Codaxy
Codaxy
ConductorSharp.Client
- 2.3.1
+ 2.4.0
Client library for Netflix Conductor, with some additional quality of life features.
https://github.com/codaxy/conductor-sharp
netflix;conductor
diff --git a/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj b/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
index c9c47d0b..693cd6f3 100644
--- a/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
+++ b/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
@@ -6,7 +6,7 @@
Codaxy
Codaxy
ConductorSharp.Engine
- 2.3.1
+ 2.4.0
Client library for Netflix Conductor, with some additional quality of life features.
https://github.com/codaxy/conductor-sharp
netflix;conductor
diff --git a/src/ConductorSharp.Engine/ExecutionManager.cs b/src/ConductorSharp.Engine/ExecutionManager.cs
index 61d4a197..1db730d8 100644
--- a/src/ConductorSharp.Engine/ExecutionManager.cs
+++ b/src/ConductorSharp.Engine/ExecutionManager.cs
@@ -118,6 +118,10 @@ private async Task PollAndHandle(TaskToWorker scheduledWorker, CancellationToken
var inputType = GetInputType(scheduledWorker.TaskType);
var inputData = pollResponse.InputData.ToObject(inputType, ConductorConstants.IoJsonSerializer);
+ // Poll response data can be huge (if read from external storage)
+ // We can save memory by not holding reference to pollResponse.InputData after it is parsed
+ pollResponse.InputData = null;
+
using var scope = _lifetimeScope.BeginLifetimeScope();
var context = scope.ResolveOptional();
@@ -141,8 +145,8 @@ private async Task PollAndHandle(TaskToWorker scheduledWorker, CancellationToken
catch (Exception exception)
{
_logger.LogError(
- "{error} while executing {task} as part of {workflow} with id {workflowId}",
- exception.Message,
+ "{@Exception} while executing {Task} as part of {Workflow} with id {WorkflowId}",
+ exception,
pollResponse.TaskDefName,
pollResponse.WorkflowType,
pollResponse.WorkflowInstanceId
diff --git a/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj b/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
index 405cee0e..6b03c307 100644
--- a/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
+++ b/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
@@ -6,7 +6,7 @@
False
Codaxy
Codaxy
- 2.3.1
+ 2.4.0
From 464f0616d96c88dc689695e8e56e6b1677570757 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bojan=20Malini=C4=87?=
<94437690+boma96@users.noreply.github.com>
Date: Wed, 3 Apr 2024 12:36:52 +0200
Subject: [PATCH 3/5] Handle TaskCanceledException (#182)
Handle task canceled exception
---
.../Service/WorkflowEngineBackgroundService.cs | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/ConductorSharp.Engine/Service/WorkflowEngineBackgroundService.cs b/src/ConductorSharp.Engine/Service/WorkflowEngineBackgroundService.cs
index 9470f55a..a6485886 100644
--- a/src/ConductorSharp.Engine/Service/WorkflowEngineBackgroundService.cs
+++ b/src/ConductorSharp.Engine/Service/WorkflowEngineBackgroundService.cs
@@ -57,6 +57,10 @@ private async Task RunAsync(CancellationToken cancellationToken)
await _healthService.SetExecutionManagerRunning(cancellationToken);
await _executionManager.StartAsync(cancellationToken);
}
+ catch (TaskCanceledException)
+ {
+ _logger.LogInformation("Stopping ConductorSharp background service");
+ }
catch (Exception exception)
{
await _healthService.UnsetExecutionManagerRunning();
From bf31b3756347c1e0ec0cd8cead81fabd79daa875 Mon Sep 17 00:00:00 2001
From: "bojan.malinic"
Date: Mon, 25 Nov 2024 15:56:25 +0100
Subject: [PATCH 4/5] Make some properties nullable
---
src/ConductorSharp.Client/ConductorSharp.Client.csproj | 2 +-
src/ConductorSharp.Client/Model/Common/TaskDefinition.cs | 4 ++--
src/ConductorSharp.Client/Model/Common/WorkflowDefinition.cs | 4 ++--
src/ConductorSharp.Engine/Builders/TaskDefinitionBuilder.cs | 2 ++
.../Builders/WorkflowDefinitionBuilder.cs | 4 +++-
src/ConductorSharp.Engine/ConductorSharp.Engine.csproj | 2 +-
src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj | 2 +-
7 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/src/ConductorSharp.Client/ConductorSharp.Client.csproj b/src/ConductorSharp.Client/ConductorSharp.Client.csproj
index e36a6b08..fd97aaeb 100644
--- a/src/ConductorSharp.Client/ConductorSharp.Client.csproj
+++ b/src/ConductorSharp.Client/ConductorSharp.Client.csproj
@@ -6,7 +6,7 @@
Codaxy
Codaxy
ConductorSharp.Client
- 2.4.0
+ 2.4.1
Client library for Netflix Conductor, with some additional quality of life features.
https://github.com/codaxy/conductor-sharp
netflix;conductor
diff --git a/src/ConductorSharp.Client/Model/Common/TaskDefinition.cs b/src/ConductorSharp.Client/Model/Common/TaskDefinition.cs
index 1fbcaafa..78134158 100644
--- a/src/ConductorSharp.Client/Model/Common/TaskDefinition.cs
+++ b/src/ConductorSharp.Client/Model/Common/TaskDefinition.cs
@@ -10,10 +10,10 @@ public class TaskDefinition
public string OwnerApp { get; set; } = "test@test.local";
[JsonProperty("createTime")]
- public long CreateTime { get; set; }
+ public long? CreateTime { get; set; }
[JsonProperty("updateTime")]
- public long UpdateTime { get; set; }
+ public long? UpdateTime { get; set; }
[JsonProperty("createdBy")]
public string CreatedBy { get; set; }
diff --git a/src/ConductorSharp.Client/Model/Common/WorkflowDefinition.cs b/src/ConductorSharp.Client/Model/Common/WorkflowDefinition.cs
index 64081597..586d29e6 100644
--- a/src/ConductorSharp.Client/Model/Common/WorkflowDefinition.cs
+++ b/src/ConductorSharp.Client/Model/Common/WorkflowDefinition.cs
@@ -157,10 +157,10 @@ public JObject InputParameters
public string OwnerApp { get; set; }
[JsonProperty("createTime")]
- public long CreateTime { get; set; }
+ public long? CreateTime { get; set; }
[JsonProperty("updateTime")]
- public long UpdateTime { get; set; }
+ public long? UpdateTime { get; set; }
[JsonProperty("createdBy")]
public string CreatedBy { get; set; }
diff --git a/src/ConductorSharp.Engine/Builders/TaskDefinitionBuilder.cs b/src/ConductorSharp.Engine/Builders/TaskDefinitionBuilder.cs
index 132b0ddb..198971ee 100644
--- a/src/ConductorSharp.Engine/Builders/TaskDefinitionBuilder.cs
+++ b/src/ConductorSharp.Engine/Builders/TaskDefinitionBuilder.cs
@@ -69,6 +69,8 @@ public TaskDefinition Build(Type taskType, Action updateO
UpdatedBy = options.UpdatedBy,
InputTemplate = options.InputTemplate,
ExecutionNameSpace = options.ExecutionNameSpace,
+ CreateTime = 0,
+ UpdateTime = 0
};
}
diff --git a/src/ConductorSharp.Engine/Builders/WorkflowDefinitionBuilder.cs b/src/ConductorSharp.Engine/Builders/WorkflowDefinitionBuilder.cs
index c95bf07b..ae5439ba 100644
--- a/src/ConductorSharp.Engine/Builders/WorkflowDefinitionBuilder.cs
+++ b/src/ConductorSharp.Engine/Builders/WorkflowDefinitionBuilder.cs
@@ -135,7 +135,9 @@ public WorkflowDefinition Build()
OutputParameters = BuildContext.Outputs,
OwnerApp = BuildContext.WorkflowOptions.OwnerApp,
OwnerEmail = BuildContext.WorkflowOptions.OwnerEmail,
- Version = BuildContext.WorkflowOptions.Version
+ Version = BuildContext.WorkflowOptions.Version,
+ CreateTime = 0,
+ UpdateTime = 0
};
}
diff --git a/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj b/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
index 693cd6f3..b9f97ac1 100644
--- a/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
+++ b/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
@@ -6,7 +6,7 @@
Codaxy
Codaxy
ConductorSharp.Engine
- 2.4.0
+ 2.4.1
Client library for Netflix Conductor, with some additional quality of life features.
https://github.com/codaxy/conductor-sharp
netflix;conductor
diff --git a/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj b/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
index 6b03c307..83709b08 100644
--- a/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
+++ b/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
@@ -6,7 +6,7 @@
False
Codaxy
Codaxy
- 2.4.0
+ 2.4.1
From 90cd5c2c740ab839708691ac1f401edb5ec3ff19 Mon Sep 17 00:00:00 2001
From: "bojan.malinic"
Date: Tue, 3 Dec 2024 13:38:27 +0100
Subject: [PATCH 5/5] Make concurrent exec limit nullable
---
src/ConductorSharp.Client/ConductorSharp.Client.csproj | 2 +-
src/ConductorSharp.Client/Model/Common/TaskDefinition.cs | 2 +-
src/ConductorSharp.Engine/ConductorSharp.Engine.csproj | 2 +-
src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj | 2 +-
src/ConductorSharp.Toolkit/ConductorSharp.Toolkit.csproj | 2 +-
src/ConductorSharp.Toolkit/Program.cs | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/ConductorSharp.Client/ConductorSharp.Client.csproj b/src/ConductorSharp.Client/ConductorSharp.Client.csproj
index fd97aaeb..70949f33 100644
--- a/src/ConductorSharp.Client/ConductorSharp.Client.csproj
+++ b/src/ConductorSharp.Client/ConductorSharp.Client.csproj
@@ -6,7 +6,7 @@
Codaxy
Codaxy
ConductorSharp.Client
- 2.4.1
+ 2.4.2
Client library for Netflix Conductor, with some additional quality of life features.
https://github.com/codaxy/conductor-sharp
netflix;conductor
diff --git a/src/ConductorSharp.Client/Model/Common/TaskDefinition.cs b/src/ConductorSharp.Client/Model/Common/TaskDefinition.cs
index 78134158..c8ab7987 100644
--- a/src/ConductorSharp.Client/Model/Common/TaskDefinition.cs
+++ b/src/ConductorSharp.Client/Model/Common/TaskDefinition.cs
@@ -74,7 +74,7 @@ public class TaskDefinition
/// Number of tasks that can be executed at any given time.
/// Optional
[JsonProperty("concurrentExecLimit")]
- public int ConcurrentExecLimit { get; set; }
+ public int? ConcurrentExecLimit { get; set; }
/// Allows to define default values, which can be overridden by values provided in Workflow.
[JsonProperty("inputTemplate")]
diff --git a/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj b/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
index b9f97ac1..e9fe8329 100644
--- a/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
+++ b/src/ConductorSharp.Engine/ConductorSharp.Engine.csproj
@@ -6,7 +6,7 @@
Codaxy
Codaxy
ConductorSharp.Engine
- 2.4.1
+ 2.4.2
Client library for Netflix Conductor, with some additional quality of life features.
https://github.com/codaxy/conductor-sharp
netflix;conductor
diff --git a/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj b/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
index 83709b08..e055e81f 100644
--- a/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
+++ b/src/ConductorSharp.Patterns/ConductorSharp.Patterns.csproj
@@ -6,7 +6,7 @@
False
Codaxy
Codaxy
- 2.4.1
+ 2.4.2
diff --git a/src/ConductorSharp.Toolkit/ConductorSharp.Toolkit.csproj b/src/ConductorSharp.Toolkit/ConductorSharp.Toolkit.csproj
index 8022a1d4..59c14b0b 100644
--- a/src/ConductorSharp.Toolkit/ConductorSharp.Toolkit.csproj
+++ b/src/ConductorSharp.Toolkit/ConductorSharp.Toolkit.csproj
@@ -7,7 +7,7 @@
disable
true
dotnet-conductorsharp
- 2.0.0
+ 2.0.1
diff --git a/src/ConductorSharp.Toolkit/Program.cs b/src/ConductorSharp.Toolkit/Program.cs
index 61729489..2001e089 100644
--- a/src/ConductorSharp.Toolkit/Program.cs
+++ b/src/ConductorSharp.Toolkit/Program.cs
@@ -16,7 +16,7 @@ namespace ConductorSharp.Toolkit
{
class Program
{
- public const string Version = "2.0.0";
+ public const string Version = "2.0.1";
public async static Task Main(string[] args)
{