Commit Graph

293 Commits

Author SHA1 Message Date
Yoan Bozhilov 0799454a1f fix(taskprocessing): claim tasks atomically with SKIP LOCKED + composite index
Replace the worker retry/ignore-list claim-loop with a single atomic
SELECT ... FOR UPDATE SKIP LOCKED claim (SQLite bounded-retry fallback),
preserving the no-duplicate guarantee while removing the thundering-herd
contention that throttled backlog draining. Add a (status,type,last_updated)
index via the table-creating migration + db:add-missing-indices listener.

Signed-off-by: Yoan Bozhilov <bygadd@gmail.com>
Assisted-by: Claude Code:claude-opus-4-8
2026-06-15 16:37:34 +02:00
Julien Veyssier d8477ed7d4 feat(task-streaming): set preferStreaming default value to false, allow setting it with the OCS API
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2026-06-12 10:34:11 +02:00
Julien Veyssier b04de05805 fix(task-streaming): fix psalm issues, run cs:fix, gen openapi specs
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2026-06-10 14:52:56 +02:00
Julien Veyssier ddf914231b feat(task-streaming): add preferStreaming boolean attribute to taskprocessing tasks. pass it to ISynchronousProgressiveProvider::process
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2026-06-10 14:52:56 +02:00
Côme Chilliet 1ab09ec753 chore: Apply new coding standard to all files
The diff can be checked using: git diff --ignore-all-space --ignore-blank-lines
To see only the changes not related to blank lines.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-06-01 13:46:39 +02:00
Benjamin Gaussorgues f881e95e18 fix(db): ensure no autoincrement for Oracle
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-05-29 09:14:49 +02:00
Benjamin Gaussorgues 4ee75168d5 feat(jobs): allow to keep track of job executions
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-05-29 09:14:49 +02:00
Benjamin Gaussorgues 8db8776f2d feat(jobs): introduce background job classes registry
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2026-05-29 09:14:48 +02:00
Ferdinand Thiessen 20acaf307e chore: add missing Override attribute to core code
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-28 21:29:28 +02:00
Robin Appelman a545c93d36 perf: swap around root_id and mount_path_hash in index
Signed-off-by: Robin Appelman <robin@icewind.nl>
2026-04-23 14:13:58 +02:00
Maksim Sukharev f01ba2de0f fix(bg_jobs): store job argument as a text, increase length cap from 4000 to 32000
Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
2026-03-18 15:50:38 +01:00
Julius Knorr c378bb4e9a Merge pull request #58236 from nextcloud/jtr/fix-db-missing-indices-at-install-time
fix(setup): add index properties_name_path_user by default on new installs
2026-02-19 09:17:45 +01:00
Carl Schwan f6c839d125 refactor(psalm): Modernize migration doc
And remove all the duplication in the subclasses

Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-02-12 11:25:55 +01:00
Josh 57b0630b20 fix(setup): add index properities_name_path_user by default
Added in #52175 but only to the missing indices listener. Resulted in new installations trigger warnings about database missing indices unnecessary. 

Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-02-10 14:27:43 -05:00
provokateurin f12cecb684 feat(rector): Enable SafeDeclareStrictTypesRector
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-09 10:59:31 +01:00
Ferdinand Thiessen 45a924cafd fix(core): adjust faulty migration version number
Its Nextcloud 33 not 34.
Better fix before the release.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-28 14:42:22 +01:00
Ferdinand Thiessen 428e76214e chore: drop legacy WhatsNew
This feature was not used in 8 years and from frontend did not even
properly work anymore and was implemented using deprecated API.
So get rid of it.

The last version that was using a changelog from the changelog server
was Nextcloud 20.

We use the firstrunwizard nowadays for informing about Nextcloud
changes in new releases.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-21 23:23:10 +01:00
Louis 2716b0f6a6 Merge pull request #57292 from nextcloud/feature/54562/files-sharing-authoritative
feat(files_sharing): implement partial mount providers
2026-01-16 10:37:36 +01:00
Louis Chmn 7323680779 feat(files_sharing): Add indexes for target on share and share_external
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
Signed-off-by: Louis Chmn <louis@chmn.me>
2026-01-16 08:32:14 +01:00
Maxence Lange 1628390ccf fix(mounts): only remove existing index
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2026-01-15 16:15:40 -01:00
provokateurin 341fd348e6 fix(UserMountCache): Add back unique index for oc_mounts and use normal insert
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-12-15 12:26:23 +01:00
Carl Schwan 0e686fc6a9 feat: Port jobs table to snowflakes ids
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-12-04 17:16:12 +01:00
Julien Veyssier b4f7fe2cb6 feat(taskprocessing): add a boolean 'includeWatermark' to taskprocessing tasks and pass it to ISynchronousWatermarkingProvider::process
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-11-27 11:32:08 +01:00
Tobias Kaminsky 6f0537b4e9 Merge pull request #56494 from nextcloud/carl/result-improv
Improve IResult
2025-11-20 15:38:17 +01:00
Carl Schwan 4d47fdaa85 chore: Run rector with new rules for fetch
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-11-18 17:45:57 +01:00
Joas Schilling 4676b12a32 fix(db): Fix comparing JSON data in MySQL and MariaDB
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:32 +01:00
Joas Schilling fb8caecbb0 fix(db): Fix JSON handling in WHERE statements for postgres
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-11-18 11:58:31 +01:00
Julien Veyssier 8b3e59fa36 fix(sharing): fix potentially broken shares from the past, change 'null' download permission to 'true'
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-11-17 10:07:44 +01:00
Marcel Klehr d04d575ed3 Merge branch 'master' into feat/taskprocessing/user-facing-error-message
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-30 10:13:39 +01:00
Carl Schwan 336cc3fa35 feat(Db): Use SnowflakeId for previews
Allow to get an id for the storing the preview on disk before inserting
the preview on the DB.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-28 17:50:03 +01:00
Marcel Klehr 7373f11af6 feat(TaskProcessing): user-facing error messages
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 16:53:41 +02:00
Benjamin Gaussorgues 3aa0c23e40 Merge pull request #54543 from nextcloud/preview-db-rework 2025-10-08 16:39:23 +02:00
Carl Schwan bef3996c3e fix(preview): Make version column a string
And move it to a different table so that we don't have to pay the
storage cost when not using it (most of the times).

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-08 14:07:06 +02:00
Carl Schwan 324b54b863 refactor(preview): Cleanup the implementation of the new preview backend
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan b0357663b9 perf(preview): Optimize migration and simplify DB layout
* Simplify migration by not moving the actual files and just updating
  the DB
* Don't store the storageid in the preview table as it is not needed
* Start adding tests

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan 13c35c0f17 perf(preview): Migrate previews to the new optimized table
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-06 13:37:15 +02:00
Carl Schwan 18fbacdd8d perf(preview): Split preview data to new table
The new oc_previews table is optimized for storing previews and should
decrease significantly the space taken by previews in the filecache
table.

This attend to reuse the IObjectStore abstraction over S3/Swift/Azure
but currently only support one single bucket configuration.

Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
2025-10-06 13:37:15 +02:00
Carl Schwan 9e848551be refactor: Port away from more IQueryBuilder::execute
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-10-02 14:40:28 +02:00
Carl Schwan 0e7d5dce1c refactor: Port away from changeColumn
Replace by the drop-in replacement modifyColumn

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-12 18:05:19 +02:00
Maxence Lange c86f2e948a feat(migration-attributes): add DataCleansing
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2025-09-03 13:32:40 -01:00
Joas Schilling 6a6f5f8086 docs: Adjust comment to avoid future confusion
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-08-27 08:16:04 +02:00
Côme Chilliet e2b8ef769c fix: Fix unique constraint violation in oc_vcategory migration
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-08-19 17:02:54 +02:00
Julien Veyssier 222b19b805 feat(taskprocessing): rename cleanup column to allow_cleanup
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:22 +02:00
Julien Veyssier 8c52b6c0fe feat(taskprocessing): add cleanup flag to tasks to decide if they should be cleaned up automatically
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:21 +02:00
skjnldsv 9aac182109 fix(core): ensure unique vcategory
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-08-05 22:11:21 +02:00
Ferdinand Thiessen 5981b7eb51 chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
Richard Steinmetz b6af06d2e0 fix: revive always storing lowercased email addresses
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-06-24 13:53:08 +02:00
provokateurin 82fb8f8508 refactor: Extend rector to core/
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-15 00:16:54 +02:00
provokateurin 8da9c0f48c Revert "refactor: add migration for email setting"
This reverts commit e7859f0dac.

Signed-off-by: provokateurin <kate@provokateurin.de>
2025-04-07 09:55:09 +02:00
Ferdinand Thiessen e7859f0dac refactor: add migration for email setting
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-02 19:06:25 +02:00