Sipke Schoorstra
2a6d8f9bfe
Synchronize Azure Service Bus queue worker based on correlation ID to prevent multiple workflow instances with same correlation ID
2021-01-19 18:19:36 +01:00
Sipke Schoorstra
f57b834d36
Fix Azure Service Bus queue worker
...
This fixes an issue with message / workflow correlation.
2021-01-18 19:52:02 +01:00
Sipke Schoorstra
4ef40c3a4d
Update StartAt
2021-01-16 18:50:47 +01:00
Sipke Schoorstra
d3196eea22
Cleanup
2021-01-16 12:52:08 +01:00
Sipke Schoorstra
4ebd41cc21
Fix Azure Service Bus queue worker trigger
2021-01-16 12:47:04 +01:00
Sipke Schoorstra
279cb1b08d
Fix service bus synchronized access
2021-01-16 12:46:45 +01:00
Sipke Schoorstra
7d576a7ddc
Fix Azure Service Bus queue worker
2021-01-15 14:56:31 +01:00
Sipke Schoorstra
fe6aa7d9ff
Fix OutcomeBuilder bug
2021-01-14 23:28:08 +01:00
Sipke Schoorstra
89dfba8269
Add source file + line number to execution log. ( #571 )
...
* Add source and activity type to WorkflowExecutionLogRecord
* Update builder extensions
2021-01-14 21:45:28 +01:00
Sipke Schoorstra
fcfe7f08b4
Change For/While/ForEach/IfElse behavior
...
Before this change, the aforementioned activities would always schedule the Done outcome.
After this change, the Done outcome is scheduled **after** the Iterate branch and True or False branches have completed
2021-01-12 09:28:48 +01:00
Sipke Schoorstra
67cfbb6c1a
Run workflows directly from Azure queue
2021-01-10 17:08:56 +01:00
Sipke Schoorstra
49d4e5bb36
Optimize workflow trigger re-indexing
2021-01-10 13:43:34 +01:00
Sipke Schoorstra
7aae2d0fa8
Run timer startup job in the background
2021-01-09 14:49:42 +01:00
Sipke Schoorstra
9bfe7d474a
Fix queue worker workflow selector predicate
2021-01-09 12:51:00 +01:00
Sipke Schoorstra
dd72ba3f14
Fix StartAt issue
2021-01-08 22:09:52 +01:00
Sipke Schoorstra
409bf36e7e
Release distributed lock
2021-01-08 22:00:44 +01:00
Sipke Schoorstra
3cfc2ad665
Remove unused namespaces
2021-01-08 17:40:32 +01:00
Sipke Schoorstra
502850889d
Update Hangfire job
2021-01-08 11:34:10 +01:00
Sipke Schoorstra
9e63d9ad69
Distributed workflow execution support ( #559 )
...
* Incremental work on workflow message queuing
* Add extension to register message consumers
* Update Rebus logging to use Microsoft Extensions Logging
* Synchronize quartz job and run instance consumer with distributed locking
* Add service bus options
2021-01-08 11:14:00 +01:00
Sipke Schoorstra
83242ddecd
EF Core Persistence Provider ( #557 )
...
* Add EF Core persistence provider
* Add EF Core migration runner
* Fix potential duplicate queue registrations
* Update EF Core projects
2021-01-07 13:01:19 +01:00
Sipke Schoorstra
96464c988c
Update ScheduleWorkflowResult to schedule job AFTER workflow is suspended
2021-01-03 19:21:50 +01:00
Sipke Schoorstra
1aee05d82f
Add logging to Timer
2021-01-03 19:19:03 +01:00
Sipke Schoorstra
7c2e9f9342
Unschedule triggers when blocking timers are removed
2021-01-02 13:51:53 +01:00
Sipke Schoorstra
34983144c3
Optimize synchronized workflow instance execution in parallel
2021-01-02 12:57:27 +01:00
Sipke Schoorstra
dcbf14c144
Fix and simplify composite activity + while/for/foreach handling
2021-01-01 17:58:08 +01:00
Sipke Schoorstra
10fe049c10
Experimental bug fixes regarding timer & container scheduling
2020-12-31 17:24:55 +01:00
Sipke Schoorstra
356e0ba0ba
Update Azure Service Bus queue worker to schedule workflow execution in the background
...
This to prevent scenarios where workflows take a long time to execute and the message gets re-delivered.
This change ACKS the message right after the workflow task has been queued internally.
2020-12-30 12:02:13 +01:00
Sipke Schoorstra
993e08ea89
Refactored Switch Activity ( #545 )
...
* Add IfThen activity + sample
* Add match mode
* Rename IfThen to Switch
2020-12-29 16:40:21 +01:00
Sipke Schoorstra
fa13aadd37
Serialization improvements and cleanup
2020-12-26 14:37:05 +01:00
Sipke Schoorstra
310cab9032
Elsa Activity + Workflow registration refactorings ( #543 )
...
* Elsa options and activity/workflow registration improvements
* Add convenience extensions for Quartz and Hangfire timer activity registration
* Fix solution and warnings
2020-12-26 12:21:08 +01:00
Rafael Carnucci
92e1a1c3bf
Redesign activities and workflows management ( #536 )
...
* Adding Activities, Workflows, TriggerProviders and WorkflowContextProviders by Reflection
* Activities stored in ElsaOptions, instead of IServiceCollection
* Remove the empty XML comments
* Renamed ElsaConfigurationsOptions to ElsaConfiguration
* Small enhancements
* Workflows stored in ElsaOptions, instead of IServiceCollection
* Instantiated workflows can now be added
* Workflow instance was not registered to DI
* Add Elsa.Activities.Rebus project to solution
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2020-12-25 21:17:17 +01:00
Sipke Schoorstra
8a4fae6f38
Fix Timer ExecuteAt persistence (for Trigger)
...
Without ExecuteAt receiving a value (even if it lies in the past), the TimerTriggerProvider will keep triggering workflows containing a Timer.
2020-12-24 21:36:42 +01:00
Sipke Schoorstra
28ac92b6ff
Introduce Workflow Instance Name ( #538 )
...
* Add Name property to Workflow Instance models and update Dashboard UI
* Add SetName activity
* Add naming workflow sample
* Add modal html
* Implement search by workflow instance name
2020-12-24 14:30:55 +01:00
Sipke Schoorstra
b24ff99354
Fix build after merge
2020-12-23 12:50:34 +01:00
Rafael Carnucci
4274996dd9
Separate quartz ( #516 )
...
* Fix sample Elsa.Samples.FileBasedWorkflow
* Separate Quartz from Elsa.Activities.Timers
* Incremental work on Hangfire integration
* Incremental work on Hangfire integration
* Incremental work on Hangfire integration
* Incremental work on Hangfire integration
* Add CancelTimer
* ToCronExpression for Duration
* Removed SweepInterval
* Synchronize access to scheduler
* Refactoring RunHangfireWorkflowJob
* Optimize timer activities to always execute when target time stamp lies in past
* Refactoring TimersOptionsExtensions
* Added common.props and configureawait.props
* Rename CancelTimer to ClearTimer
* Wrong parameter name in comment
* Refactoring TimerConsts and RunQuartzWorkflowJob
Co-authored-by: Rafael Carnucci <rafael.carnucci@icn.de>
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2020-12-23 12:38:09 +01:00
Sipke Schoorstra
8dbc3fe100
Workflow Execution Log ( #530 )
...
* Rename provider folder to locking
* Update project reference paths
* Incremental work on workflow execution log storage
* Fix deadlock
* Add workflow execution log stores
2020-12-21 17:08:32 +01:00
Sipke Schoorstra
ee89331b91
Handle ServiceBusCommunicationException
2020-12-21 14:21:19 +01:00
Sipke Schoorstra
1542576c98
Decrease log level for MessageLockLostException
2020-12-21 13:55:13 +01:00
Sipke Schoorstra
913241732a
Fix locking in MessageSenderFactory
2020-12-21 13:54:44 +01:00
Sipke Schoorstra
f5f9c070ca
Optimize timer activities to always execute when target time stamp lies in past
2020-12-20 20:22:03 +01:00
Sipke Schoorstra
8e7ade1ac4
Synchronize access to scheduler
2020-12-20 20:04:19 +01:00
Sipke Schoorstra
03c9f94671
Improve specifications and YesSQL implementation ( #529 )
...
* Update Fluid.Core package
* Make specifications flexible
* Update build environment
* Disable global.json
2020-12-20 12:12:32 +01:00
Sipke Schoorstra
c047d66942
Update packages
2020-12-19 15:35:11 +01:00
Sipke Schoorstra
d41039b567
Rename extensions namespace
2020-12-18 11:35:29 +01:00
Rafael Carnucci
8419424c98
Expand send mail ( #522 )
...
* Fix sample Elsa.Samples.FileBasedWorkflow
* Enhance SendMail
* Support for multiple receivers
Co-authored-by: Rafael Carnucci <rafael.carnucci@icn.de>
2020-12-16 11:47:02 +01:00
Rafael Carnucci
0ba56f51b4
Enhance project structure ( #524 )
...
* Fix sample Elsa.Samples.FileBasedWorkflow
* Centralize project properties
* Fix PackageLicenseExpression
* Added configureawait.props & FodyWeavers.xml & FodyWeavers.xsd.
* Remove icon.png and added PackageIconUrl
* Removed <Nullable>disable</Nullable>
* Fix Icon in Elsa.Activities.MassTransit and Rebuild
Co-authored-by: Rafael Carnucci <rafael.carnucci@icn.de>
2020-12-16 10:31:02 +01:00
Sipke Schoorstra
9dc7b691da
Add Entity Changed blocking support + workflow context enhancements
2020-12-14 21:12:37 +01:00
Sipke Schoorstra
69c6fedc86
Rename Dto to Model and minor formatting
2020-12-14 20:03:40 +01:00
Rafael Carnucci
b22a9f8f8c
Added EntityChanged Trigger ( #512 )
...
Co-authored-by: Rafael Carnucci <rafael.carnucci@icn.de>
2020-12-14 19:57:33 +01:00
Sipke Schoorstra
d6cc7d7f56
Implement Specification pattern ( #517 )
...
* Add specifications
* Update persistence providers with specification pattern
2020-12-14 17:15:39 +01:00