Robin Appelman
8519f5adb0
fix: don't update cached mountpoints if the request doesn't have filesystem access
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-08-01 16:04:33 +07:00
Côme Chilliet
72eba38e20
fix(encryption): Correctly handle file opening and copying failures
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-07-03 14:02:48 +07:00
Kent Delante
e9aa004b9b
fix(s3): retry failed multipart uploads with decreased concurrency
...
Signed-off-by: Kent Delante <kent.delante@proton.me>
2025-06-20 19:44:55 +07:00
Daniel Calviño Sánchez
5830546c1b
fix(ObjectStore): Make S3 "connect_timeout" option configurable
...
The hardcoded connection timeout of 5 seconds may not be enough in some
cases, so now it is got from the ObjectStore arguments in Nextcloud
configuration, falling back to 5 if not set.
The connection timeout is set in seconds, but decimal precision can be
used for subsecond accuracy (for example, 4.2 for 4200 milliseconds).
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-06-18 11:02:22 +07:00
Joas Schilling
688dd8be61
fix: Run cleanByMoundId query on all shards
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-06-08 09:28:42 +07:00
Robin Appelman
7eb607c8b9
perf: set the folder size in the same query as we create it
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-06-02 12:00:59 +07:00
Louis Chemineau
1c80a98720
fix(S3): Use original folder size during copy
...
This prevent having copied folders with a wrongly set size of 0KB.
- Fix https://github.com/nextcloud/server/issues/51916
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-06-02 09:56:15 +07:00
Jonas
10034c4d15
fix(node): emit hooks on `Node::copy()`
...
When calling `Files\Node\Node::copy()`, `Files\View::copy()` gets called,
but `Files\View::fakeRoot` is empty so the hooks are not emitted if no
path is given to `Files\View::shouldEmitHooks()`.
This results in node-related events like `NodeCopiedEvent` not being
fired when copying files via `Files\Node\Node::copy()`.
`Files\View::shouldEmitHooks()` is given a path as parameter in almost
all places except when called from the `copy()` function. This commit
changes it and passes the copy target path.
Fixes : nextcloud/collectives#1756
Signed-off-by: Jonas <jonas@freesources.org>
2025-05-28 11:49:58 +07:00
Stephan Orbaugh
0d394fc9e9
Merge pull request #52988 from nextcloud/backport/50157/stable30
...
[stable30] feat(UserMountCache): Emit events for added, removed and updated mounts
2025-05-27 13:24:15 +07:00
provokateurin
a8b96fd4f8
feat(UserMountCache): Emit events for added, removed and updated mounts
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-26 08:34:45 +07:00
Robin Appelman
fe29175144
Merge pull request #52884 from nextcloud/backport/52873/stable30
...
[stable30] fix: improve error message when cache rename source can't be found
2025-05-25 16:50:16 +07:00
provokateurin
8ed7fdafaf
fix(SetupManager): Include home and root providers when registering mounts
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-20 15:14:08 +07:00
Kate
119727d74a
Merge pull request #52759 from nextcloud/backport/49352/stable30
2025-05-19 06:44:24 +07:00
Robin Appelman
09e1ecd15b
Merge pull request #52867 from nextcloud/backport/51603/stable30
...
[stable30] Add command to list orphan objects
2025-05-16 21:36:28 +07:00
Louis
921c98e4df
Merge pull request #52696 from nextcloud/backport/49903/stable30
2025-05-16 16:23:56 +07:00
Robin Appelman
a4f0a9c7ca
fix: improve error message when cache rename source can't be found
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-15 16:34:39 +07:00
Robin Appelman
86206e9bac
fix: keep IObjectStoreMetaData in private namespace for backports
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-15 18:00:35 +07:00
Robin Appelman
ca6e59c820
Merge pull request #52824 from nextcloud/backport/52775/stable30
...
[stable30] fix unjailedroot of nested jails if there are other wrappers in between
2025-05-15 14:57:11 +07:00
Robin Appelman
9da4ebd650
feat: add command to list objects
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-15 14:13:06 +07:00
Robin Appelman
042934a99f
feat: add command to get object metadata
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-15 14:13:06 +07:00
Robin Appelman
855f3f1b4f
Merge pull request #52763 from nextcloud/backport/52706/stable30
...
[stable30] feat: add more encryption checks to info:file
2025-05-15 14:05:34 +07:00
Robin Appelman
b253b70d16
Merge pull request #52761 from nextcloud/backport/52707/stable30
...
[stable30] fix: throw a better error if we can't get the encrypted header size
2025-05-15 14:03:07 +07:00
Robin Appelman
195358eb8e
fix: fix unjailedroot of nested jails if there are other wrappers in between
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-14 20:08:02 +07:00
Robin Appelman
e5aabded60
test: add test for nested cache jail unjailedroot
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-14 20:06:56 +07:00
Robin Appelman
f2798bf0d4
fix: improve handling of newFolder race condition handling
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-13 11:59:28 +07:00
Robin Appelman
fa135d9535
fix: throw a better error if we can't get the encrypted header size
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-12 14:14:59 +07:00
Robin Appelman
0fe56ce669
feat: add more encryption checks to info:file
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-12 11:27:29 +07:00
Robin Appelman
87a4bff4ee
chore: cleanup leftover debug statement
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-12 11:59:53 +07:00
Robin Appelman
eade5703ba
fix: get object size from stream where possible
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-12 11:59:47 +07:00
Robin Appelman
6632669157
fix: don't perform the extra buffering in s3 stream write when the stream size is known
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-12 11:58:34 +07:00
Robin Appelman
b1ad63666f
fix: use php://temp instead of php://memory for multi-part upload buffer
...
this should reduce potential memory issues if the limit is set very high
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-12 11:58:23 +07:00
Robin Appelman
697a20ef2a
fix: restore updated encrypted version when copying versions
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-05-08 18:57:17 +07:00
Ferdinand Thiessen
832f79ac93
chore: apply code style
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-30 19:04:59 +07:00
Côme Chilliet
3646da59f3
fix: Fix copying to the root of another mountpoint
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-28 10:23:21 +07:00
Anna Larch
cae5c4f02b
fix(objectstorage): add retry attempts to S3 connection
...
Signed-off-by: Anna Larch <anna@nextcloud.com>
2025-04-23 18:40:07 +07:00
Louis
e08afe0849
Merge pull request #52184 from nextcloud/backport/51020/stable30
2025-04-17 11:38:34 +07:00
Louis Chemineau
9bed21a8d7
fix: Transfer ownership with S3 as primary
...
When using S3 as primary storage, transferring ownership with the `--move` option fail with the following error:
`SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '8-45b963397aa40d4a0063e0d85e4fe7a1' for key 'fs_storage_path_hash'`
The `--move` option moves the entire home folder from one account to another.
The error means that the move failed because the destination folder already exist in `oc_filecache`.
- With S3 as primary storage, folders only exists as entries in `oc_filecache`.
- With S3 as primary storage, `moveFromStorage(...)` only moves the cache entry, as nothing needs to be moved on disk. This cache move does not delete potentially pre-existing destination folder.
- With Local storage, `moveFromStorage(...)` calls `rename(...)` which delete pre-existing folder.
- `transfer(...)`: 687a4d9ac7/apps/files/lib/Service/OwnershipTransferService.php (L112)
- `oneTimeUserSetup(...)`: 687a4d9ac7/lib/private/Files/SetupManager.php (L261-L262)
- `mkdir(...)`: 687a4d9ac7/lib/private/Files/ObjectStore/ObjectStoreStorage.php (L91-L135)
- `moveFromStorage(...)`: 687a4d9ac7/lib/private/Files/ObjectStore/ObjectStoreStorage.php (L635-L636)
Delete pre-existing folder in `moveFromStorage(...)`
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-04-16 16:18:42 +07:00
Robin Appelman
a4d2af5155
fix: only do cache copy in updater if the parent folder should be in cache
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-15 18:05:36 +07:00
Julius Knorr
d38a431030
fix: Catch old cached paths and fetch the new one
...
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-04-08 12:44:02 +07:00
Julius Knorr
af1112dac3
fix: Proper order for checking path prefix for getting file by id from cache
...
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-04-08 12:44:01 +07:00
Ferdinand Thiessen
d0402dee06
fix(IFilenameValidator): correctly handle case insensitivity
...
- forbidden names and forbidden base names are case **insensitive**
so we need to check all lowercase here.
- add test that config value is also read case insensitive.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-24 11:46:43 +07:00
Git'Fellow
552c5e8cef
fix(files): Make sure file pointer exists
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2025-03-17 16:04:47 +07:00
Louis
acf19f7880
Revert "Revert "[stable30] fix: Handle copy of folders containing live photos""
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-03-05 13:45:23 +07:00
Marcel Müller
c6ca459b40
fix: No IFactory in constructor
...
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2025-03-05 11:34:03 +07:00
Joas Schilling
259919e9fd
fix(files): Don't do session related work in the constructor of the View
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-03-05 11:34:03 +07:00
Andy Scherzinger
682c8e6a61
Merge pull request #50796 from nextcloud/backport/50781/stable30
...
[stable30] perf(files): faster query to fetch incomplete directories
2025-02-17 19:15:58 +07:00
Robin Appelman
33fb176651
fix: make locked exception path relative to the view
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-02-15 14:42:51 +07:00
Benjamin Gaussorgues
765b4921ff
perf(files): faster query to fetch incomplete directories
...
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-02-14 10:57:26 +07:00
Andy Scherzinger
7bf1126b1f
Merge pull request #49657 from nextcloud/backport/48769/stable30
...
[stable30] Fix incorrect permissions when copying shared files
2025-02-14 10:30:46 +07:00
Louis Chemineau
a663b3e0cd
fix(files): Correctly copy the cache information on copy operations
...
Needed to copy the `encrypted` flag of encrypted files when those files are two level down in a moved folder.
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-02-13 23:35:59 +07:00