Nicolas K.
7bca8b4924
fix(repositories): unwanted integer to string conversion ( #13586 )
...
* fix(repositories): unwanted integer to string conversion
* fix(repositories): clean code
---------
Co-authored-by: nKwiatkowski <nkwiatkowski@kestra.io >
2025-12-10 18:59:52 +01:00
Loïc Mathieu
56febfb415
fix(executions): don't remove worker task result for killed execution
...
As killing an executuion is asynchronous, it is inherently racy.
So when we kill an execution it move to the rerminal state which then will remove any worker task result to purge eagerly the queue table.
But if such worker task result arrives late and was not already processed by the executor, it will be purged before ever been able to be processed so the task would nevert be updated as KILLED.
Note: this may un-flaky some falky unit tests
Fixes https://github.com/kestra-io/kestra-ee/issues/6040
2025-12-10 17:27:11 +01:00
YannC
018c22918f
Revert "feat(jdbc): method without auditlog registered for setting repository ( #13543 )" ( #13581 )
...
This reverts commit 3e9c8cf7da .
2025-12-10 16:00:55 +01:00
YannC
3e9c8cf7da
feat(jdbc): method without auditlog registered for setting repository ( #13543 )
2025-12-10 15:52:42 +01:00
Nicolas K.
008404e442
feat(filters): add new operation to filters ( #13424 )
...
* feat(filters): add new operation to filters
* feat(filters): add flowId to flow search
* fix(test): fix unit test
---------
Co-authored-by: nKwiatkowski <nkwiatkowski@kestra.io >
2025-12-10 15:17:32 +01:00
char zheng
bea3d63d89
fix(executions): concurrency limit exceeded for KILLED execution
...
Fixes #13211
2025-12-09 09:57:49 +01:00
mustafatarek
354873e220
chore(core): remove unnecessary attempt list copying
2025-12-08 09:41:10 +01:00
brian-mulier-p
a8635108b7
fix(core): safeguard for null flow when trying to reset trigger in JdbcExecutor ( #13381 )
2025-12-04 12:46:53 +01:00
Loïc Mathieu
56fb304ff6
fix(execution): NORMAL kind should also be retrieved
...
Fixes #13262
2025-12-03 11:43:50 +01:00
brian-mulier-p
d8e3a9bd44
fix(executions): avoid infinite loop in some cases of execution failure ( #13293 )
2025-12-02 13:09:34 +01:00
Loïc Mathieu
ea44128d2b
chore(system): refactor RunnerUtils to be a static utils
...
Part-of: https://github.com/kestra-io/kestra-ee/issues/4228
2025-12-02 10:37:46 +01:00
brian.mulier
682d258e7b
feat(ns-files): add a metadata layer on top for better performance & versioned ns files
...
part of https://github.com/kestra-io/kestra/issues/5617
2025-12-01 18:13:49 +01:00
brian.mulier
d20f7039c7
fix(tests): avoid flakiness with random worker group in JdbcServiceLivenessCoordinatorTest
2025-12-01 16:56:01 +01:00
brian.mulier
2191331750
fix(tests): JdbcRunnerRetryTest.retryFailedFlowDuration flaky
2025-12-01 16:56:01 +01:00
Roman Acevedo
40880bf7d8
feat(system): force nullsFirst for ASC and opposite globally in JDBC
2025-12-01 16:06:35 +01:00
Roman Acevedo
7aca309be5
feat(dashboard): calculate running execution duration on the fly
2025-12-01 16:06:35 +01:00
brian-mulier-p
f06b1c5347
fix(core): concurrency limit on JDBC was decrementing when using FAIL or CANCEL behavior ( #13220 )
...
closes https://github.com/kestra-io/kestra/issues/13141
2025-12-01 12:44:30 +01:00
Florian Hussonnois
5a8552ad36
refactor(core): remove LogService
...
Move static methods to Logs utility class
Move purge method to existing ExecutionLogService
2025-11-28 17:48:23 +01:00
brian.mulier
b68dcb7bf5
fix(tests): larger timeout for JdbcServiceLivenessCoordinatorTest.shouldReEmitTasksToTheSameWorkerGroup
2025-11-27 19:23:17 +01:00
brian.mulier
d6933b8e49
fix(executions): avoid JdbcExecutor from being stuck due to missing flow
...
In tests it can occur for example
2025-11-27 19:23:17 +01:00
brian.mulier
15da58dbf4
fix(tests): use another db name on webserver to avoid colliding with repositories
2025-11-27 19:23:17 +01:00
brian.mulier
c3d94dc8ff
fix(tests): remove JdbcTestUtils.drop usages as it defeats concurrent test runs
2025-11-27 19:23:17 +01:00
YannC
546039e30a
fix(webserver): export test with correct path + DateField for execution export ( #13197 )
2025-11-27 15:43:03 +01:00
Loïc Mathieu
8f4bafc666
feat(execution): add an attemps on skipped tasks
2025-11-26 18:11:07 +01:00
YannC
7fd16b24e0
feat: allows to export flows/triggers/executions as a streamed CSV files ( #13137 )
2025-11-26 14:11:14 +01:00
Loïc Mathieu
9d6694f807
fix(system): WorkerTask should not FAILED when interrupting so they would be resubmitted
...
When a Worker is stopping, it will first wait for all running tasks to stop, then kill them. For those that didn't implement kill their thread would be interrupted.
But if the task is properly killed, or support interrupts (like the Sleep task), it would ends in FAILED then a WorkerTaskWould be send that would fail the flow preventing the WorkerTask to be resubmitted.
We nows check if the worker is terminating and should resubmit, in this case we didn't emit any WorkerTaskResult
Fixes #13108
Part-of: https://github.com/kestra-io/kestra-ee/issues/5556
2025-11-21 16:58:36 +01:00
Loïc Mathieu
735697ac71
chore(system): share JDBC repository code in an abstract CRUD repository
2025-11-18 11:13:16 +01:00
Loïc Mathieu
a4ca3498f3
fix(execution): use jdbcRepository.findOne to be tolerant of multiple results
...
It uses findAny() under the cover which does not throw if more than one result is returned.
Fixes #12943
2025-11-18 10:21:51 +01:00
Loïc Mathieu
41f83949f0
chore(system): replace Flow by FlowInterface where possible
...
Part-of: https://github.com/kestra-io/kestra/issues/8274
2025-11-18 09:50:49 +01:00
Florian Hussonnois
0f340a9a29
fix(scheduler): mysql convert 'now' to UTC to avoid any offset error on next_execution_date
...
Fixed a previous commit to only apply the change for MySQL
Related-to: kestra-io/kestra-ee#5611
2025-11-17 21:52:58 +01:00
Florian Hussonnois
ae204a03b0
fix(scheduler): convert 'now' to UTC to avoid any offset error on next_execution_date
...
Related-to: kestra-io/kestra-ee#5611
2025-11-17 13:12:31 +01:00
Loïc Mathieu
9957b1659e
fix(flow): flow trigger with both conditions and preconditions
...
When a flow have both a condition and a precondition, the condition was evaluated twice which lead to double execution triggered.
Fixes
2025-11-14 16:35:15 +01:00
Loïc Mathieu
03b1b1be8c
fix(system): consume the trigger queue so it is properly cleaned
...
Fixes https://github.com/kestra-io/kestra/issues/11671
2025-11-13 11:10:27 +01:00
YannC
7d1f064fe9
fix: when removing a queued execution, directly delete instead of fetching then delete to reduce deadlock ( #12789 )
2025-11-10 10:31:41 +01:00
shashank.agrawal
33299dc3ec
Issue - 10984 | Full dependency graphs for parent child namespaces.
2025-11-06 17:03:50 +01:00
Loïc Mathieu
9d3d40ade8
fix(system): trigger an execution once per condition on flow triggers
...
Fixes #12560
2025-11-05 15:30:26 +01:00
Roman Acevedo
d620dd7dec
test: set retryWithFlowableErrors as FlakyTest
2025-11-04 13:46:14 +01:00
Loïc Mathieu
f8b0d4217f
fix(executions): Flow triggered twice when there are two multiple conditions
...
Fixes #12560
2025-10-31 16:22:13 +01:00
Roman Acevedo
71e49f9eb5
feat(executions): add IN, NOT_IN, CONTAINS LABELS #11916
...
- advance on https://github.com/kestra-io/kestra/issues/11587
- companion PR: https://github.com/kestra-io/kestra-ee/pull/5617
2025-10-31 10:20:05 +01:00
Loïc Mathieu
9920d190c8
feat(system): add an administration page for concurrency limit
...
Closes #11250
2025-10-30 17:49:33 +01:00
brian.mulier
07e90de835
fix(core): CrudEvent should not be done on the repository side for KV
2025-10-30 16:57:57 +01:00
Loïc Mathieu
c06ffb3063
feat(system): set taskrun attempt to resubmitted when a taskrun is resubmitted to a worker
...
Closes https://github.com/kestra-io/kestra/issues/12481
2025-10-30 15:46:05 +01:00
brian.mulier
d9144c8c4f
feat(core): introduce KV Metadata in-repository storing ( #12342 )
...
part of https://github.com/kestra-io/kestra/issues/12341
2025-10-29 17:18:43 +01:00
brian.mulier
4ed44754ab
fix(core): use index by adding deleted everytime in query
2025-10-29 17:18:43 +01:00
Loïc Mathieu
4502c52d2b
fix(executions): remove errors and finally tasks when restarting
...
Otherwize we would detect that an error or a finally branch is processing and the flowable state would not be correctly taken.
Moreover, it prevent this branch to be taken again after a restart.
Fixes #11731
2025-10-28 14:29:27 +01:00
mustafatarek
85dc3ec788
fix(core): synchronize creation/running flowable attempt states in Jdbc executor
2025-10-22 14:26:13 +02:00
mustafatarek
c6e7ff9436
fix(core): transfer flowable attempt creation from saveFlowableOutput() to TaskRun to fix tests
2025-10-22 14:26:13 +02:00
mustafatarek
6e7d6de2e2
test: try to fix
2025-10-22 14:26:13 +02:00
mustafatarek
1771955717
feat(core): handle flowable task attempts state transitions
2025-10-22 14:26:13 +02:00
杨利伟
7e68274cf4
fix(jdbc): add comment
2025-10-22 10:36:15 +02:00