nextcloud/core/Command
Yoan Bozhilov 3f3f9c6464 fix(taskprocessing): guard lockTask on scheduled, record started_at, Oracle fallback
Address review feedback (@marcelklehr, Copilot):
- lockTask claims only SCHEDULED tasks (was status != RUNNING) and stamps
  started_at in the same atomic UPDATE, so a finished task cannot be re-claimed
  and the external-provider claim path records started_at as well.
- claimWithBoundedRetry re-reads after lockTask instead of a follow-up UPDATE.
- Oracle joins SQLite on the bounded-retry fallback: Oracle cannot combine a
  row-limiting clause with FOR UPDATE (ORA-02014), which failed the claim tests
  on Oracle CI.
- Reword the worker docblock/comments to "prefer oldest available" (parallel
  SKIP LOCKED does not guarantee a strict global order).
- Add a regression test that lockTask does not resurrect a finished task.

Signed-off-by: Yoan Bozhilov <bygadd@gmail.com>
Assisted-by: Claude Code:claude-opus-4-8
2026-06-17 19:00:53 +02:00
..
App refactor: migrate usage of OC_App to AppManager 2026-05-13 14:01:49 +02:00
Background feat(utils): add getter for serverid with proper default 2026-06-12 19:40:16 +02:00
Broadcast chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Config refactor: migrate usage of OC_App to AppManager 2026-05-13 14:01:49 +02:00
Db refactor: migrate usage of OC_App to AppManager 2026-05-13 14:01:49 +02:00
Encryption chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
FilesMetadata chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Group feat(occ): make it possible to remove an arbitrary number of users to a group 2026-05-20 09:01:30 +00:00
Info chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Integrity chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
L10n chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Log chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Maintenance chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Memcache chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Preview chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Router chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Security chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
SystemTag chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
TaskProcessing fix(taskprocessing): guard lockTask on scheduled, record started_at, Oracle fallback 2026-06-17 19:00:53 +02:00
TwoFactorAuth chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
User fix(settings,oauth2): preserve wipe state across admin deletion paths 2026-05-26 19:21:58 +00:00
Base.php chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Check.php chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
InterruptedException.php feat(rector): Enable SafeDeclareStrictTypesRector 2026-02-09 10:59:31 +01:00
SetupChecks.php chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
SnowflakeDecodeId.php chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Status.php chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00
Upgrade.php chore: add missing Override attribute to core code 2026-04-28 21:29:28 +02:00