nextcloud/lib/public/DB
Carl Schwan cae742d182
fix(propagator): Improve lock behavior of propagator
Fix possible dead locks when running the propagator caused by two
requests updating the same amount rows in transactions.

- Lock rows always in the same deterministic order by sorting the
  path_hash first

- On all database outside of sqlite, also do first a SELECT FOR UPDATE
  to lock all the rows used in batch UPDATE calls, afterward to decrease
  the risk of two requests trying to lock the same rows

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-11 16:25:12 +01:00
..
Events chore: Add SPDX header 2024-05-24 13:11:22 +02:00
QueryBuilder fix(propagator): Improve lock behavior of propagator 2026-02-11 16:25:12 +01:00
Exception.php feat(db): add mapping for lock wait timeout 2024-05-29 11:10:43 +02:00
IPreparedStatement.php chore: Add SPDX header 2024-05-24 13:11:22 +02:00
IResult.php refactor(IResult): Un-deprecate fetch and fetchAll 2025-11-19 10:53:03 +01:00
ISchemaWrapper.php feat(Db): Use SnowflakeId for previews 2025-10-28 17:50:03 +01:00
Types.php fix(db)!: Deprecate JSON fields due to problems with querying and selecting 2025-11-18 11:58:33 +01:00