Robin Appelman
bb4cf2830a
fix: better error message when trying to scan a folder that is already being scanned
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-25 18:40:03 +02:00
Ferdinand Thiessen
3a09acebd2
fix(cache): always require updates if mtime is null
...
- Resolves https://github.com/nextcloud/server/issues/51941
Due to strong typings we introduced the parameter needs to be an
integer. Previously it was `null` which was equal to `0`.
So if there is no storage mtime we need to update the cache.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-04 13:41:32 +02:00
Robin Appelman
2e9222a29a
feat: add getParentId to ICacheEntry
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-28 16:47:07 +01:00
Benjamin Gaussorgues
9bdee76535
perf(files): faster query to fetch incomplete directories
...
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-02-13 10:11:02 +01:00
Robin Appelman
2786ca579a
fix: don't use cached root info from shared cache if the watcher has detected an update
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-02-06 19:41:43 +01:00
Ferdinand Thiessen
b48ee2e924
fix: Harden files scanner for invalid null access
...
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Kate <26026535+provokateurin@users.noreply.github.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-01-28 20:08:46 +01:00
Louis Chemineau
a635710117
fix: Metadata field search
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-01-20 14:41:55 +01:00
Côme Chilliet
08c7001a04
fix: Fix copying to the root of another mountpoint
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-12-17 18:24:35 +01:00
Daniel Kesselberg
44e4fc5d41
Revert "fix: don't recalculate folder size in Cache::delete if the entry didn't exist"
...
This reverts commit 5ca9d884d7 .
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-12-16 14:03:33 +01:00
Robin Appelman
c21888e6ae
Merge pull request #47342 from nextcloud/cache-delete-notfound-size
...
fix: don't recalculate folder size in Cache::delete if the entry didn't exist
2024-12-12 17:54:48 +01:00
John Molakvoæ
3baa91d842
Merge pull request #40394 from nextcloud/updater-change-mimetype-objectstore
2024-12-11 08:40:58 +01:00
Robin Appelman
e7b882dd22
fix: only do cache copy in updater if the parent folder should be in cache
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-12-06 17:47:00 +01:00
Robin Appelman
37199779de
fix: fix mimetype not being updated when changing file extention on object store
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-12-05 18:05:13 +01:00
Robin Appelman
c2f474ff49
Merge pull request #48769 from nextcloud/copy-share-unmasked
...
Fix incorrect permissions when copying shared files
2024-12-04 20:11:41 +01:00
John Molakvoæ
b4c43bb811
Merge pull request #49551 from nextcloud/dont-propagate-future-time
2024-12-04 20:11:23 +01:00
Robin Appelman
6419de7acc
fix: use scan_permissions when copying cache items
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-12-04 19:19:08 +01:00
Robin Appelman
88c685f27c
fix: store unmaked source permissions as scan_permissions when loading share cache items
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-12-04 19:19:08 +01:00
Louis Chemineau
199b0bd4d9
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>
2024-12-03 17:04:44 +01:00
Robin Appelman
aadfcb3fe6
fix: don't propagate future mtimes
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-11-28 17:24:36 +01:00
Louis Chemineau
f9cda54cbf
fix: Wrap partial cache entry in CacheEntry
...
Because it is returned here: 7b7d07c575/lib/private/Files/Cache/Cache.php (L136-L137)
And some implementation got stricter: df95bf6ba8/lib/Mount/RootEntryCache.php (L23-L28)
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-11-21 17:13:24 +01:00
skjnldsv
4db5f708b6
fix(cache): etag constraint violation
...
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-11-21 10:34:39 +01:00
skjnldsv
14e2a8d3f9
feat(systemtags): add etag support and handle proppatch
...
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2024-10-29 09:08:31 +01:00
dependabot[bot]
bb598c8451
chore(deps): Bump nextcloud/coding-standard in /vendor-bin/cs-fixer
...
Bumps [nextcloud/coding-standard](https://github.com/nextcloud/coding-standard ) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/nextcloud/coding-standard/releases )
- [Changelog](https://github.com/nextcloud/coding-standard/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nextcloud/coding-standard/compare/v1.3.1...v1.3.2 )
---
updated-dependencies:
- dependency-name: nextcloud/coding-standard
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-10-19 07:57:35 +02:00
Git'Fellow
a1681b0756
chore(db): Apply query prepared statements
...
Fix: psalm
fix: bad file
fix: bug
chore: add batch
chore: add batch
chore: add batch
fix: psalm
2024-10-17 20:30:47 +02:00
Git'Fellow
c254855222
chore(db): Correctly apply query types
...
fix: psalm
fix: error
fix: add batch
fix: fatal error
fix: add batch
chore: add batch
chore: add batch
fix: psalm
fix: typo
fix: psalm
fix: return bool
fix: revert Manager
2024-10-17 09:21:07 +02:00
Ferdinand Thiessen
a8f46af20f
chore: Add proper deprecation dates where missing
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-20 00:46:03 +02:00
provokateurin
9836e9b164
chore(deps): Update nextcloud/coding-standard to v1.3.1
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-19 14:21:20 +02:00
Robin Appelman
b45f2420fe
fix: fix share reminder job for oracle
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-09-18 19:24:44 +02:00
Robin Appelman
75cf17e4c4
fix: verify that parent exists in cache when inserting
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-09-18 14:11:27 +02:00
Côme Chilliet
492e6997d8
chore: Fix psalm issues, put back private versions of getter in private Storage interface
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-09-16 18:11:38 +02:00
John Molakvoæ
ff0cab5956
Merge pull request #47852 from nextcloud/sharding-code-fixes
2024-09-16 11:39:58 +02:00
provokateurin
714671a8a6
fix(files): Adjust Cache::searchQuery() parameter name to match interface
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-13 18:13:44 +02:00
Robin Appelman
da59fd4389
fix: misc code fixes around db sharding
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-09-09 16:59:59 +02:00
Anna Larch
8af7ecb257
chore: adjust code to adhere to coding standard
...
Signed-off-by: Anna Larch <anna@nextcloud.com>
2024-09-05 21:23:38 +02:00
Louis Chemineau
2574cbfa61
chore: Apply php:cs recommendations
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-08-28 10:44:18 +02:00
Robin Appelman
390f6a78b4
fix: hint storage id in more places
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:21:19 +02:00
Robin Appelman
62f8b6517f
feat: implement distributing partitioned queries over multiple shards
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:21:19 +02:00
Daniel Kesselberg
af6de04e9e
style: update codestyle for coding-standard 1.2.3
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +02:00
Robin Appelman
5ca9d884d7
fix: don't recalculate folder size in Cache::delete if the entry didn't exist
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-20 12:50:42 +02:00
Robin Appelman
c5b687271b
fix: make batch propagator work with sharding restrictions
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-17 19:16:07 +02:00
Robin Appelman
ad88fd07e3
fix: make joining on tags in search queries work with sharding
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-17 15:46:39 +02:00
Robin Appelman
80f8c7949e
fix: always set storage id in Cache::get
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-17 15:46:31 +02:00
Robin Appelman
5ff7bde3fb
fix: add set storage id for more cache queries
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-17 15:46:21 +02:00
Robin Appelman
c82d382a20
feat: add base class for extending the query builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-12 17:01:39 +02:00
Robin Appelman
3a60e40a81
Merge pull request #45172 from nextcloud/test-scanner-no-transactions
...
feat: add option to disable scanner transactions
2024-06-13 14:01:34 +02:00
Robin Appelman
082c6c6e1d
fix: get child ids for folder in a separate query during move
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-06-13 10:38:57 +02:00
Louis Chemineau
a93d3a5a10
fix(files): Use isRetryable to catch retryable exceptions
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-06-11 15:15:14 +02:00
Andy Scherzinger
dae7c159f7
chore: Add SPDX header
...
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02:00
Côme Chilliet
e68544d9f4
Merge pull request #43794 from nextcloud/fix/files/scanner-metadata-diff
...
fix(files): handle multidimensional arrays in scanner
2024-05-13 11:05:40 +02:00
Josh
3c3e45f0ad
fix(Files): Change how scanner diffs for changed metadata
...
Fixes #43408
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-05-08 08:36:42 -04:00
Christoph Wurst
6258823aba
Merge pull request #45058 from nextcloud/perf/db/sort-before-chunking
...
perf(db): Sort data for IN before chunking
2024-05-07 12:11:32 +02:00
Robin Appelman
f5219a19b2
feat: add option to disable scanner transactions
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-05-03 16:40:15 +02:00
Robin Appelman
8d870a32c2
fix: fix FileAccess::getByFileId(InStorage)
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-05-01 18:00:20 +02:00
Christoph Wurst
f3d6309e36
perf(db): Sort data for IN before chunking
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-04-26 15:38:29 +02:00
Maxence Lange
b4004a2582
Merge pull request #43574 from nextcloud/enh/noid/lazyappconfig-migrate-metadata
...
enh(metadata): migrate metadata to lazy appconfig
2024-04-17 16:20:33 -01:00
Robin Appelman
d31ed8dbca
fix: use proper jailed patch in watcher
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-04-08 18:37:05 +02:00
Côme Chilliet
ec5133b739
fix: Apply new coding standard to all files
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-02 14:16:21 +02:00
Louis Chemineau
751795999a
feat(files)): Add retry logic to cover deadlock situations when moving many files
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-03-28 09:05:47 +01:00
Robin Appelman
1d9354a81e
feat: add interface for lower level filecache acess without having to do direct db queries
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-03-25 16:48:41 +01:00
Andrew Summers
45eb4a839d
Refactor OC\Server::getLockingProvider
...
Signed-off-by: Andrew Summers <18727110+summersab@users.noreply.github.com>
2024-03-15 13:11:33 +01:00
Thomas Citharel
ffeb797ecc
refactor(mimeloader): modernize MimeTypeLoader
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2024-03-14 17:24:36 +01:00
Git'Fellow
575159b819
fix(filecache): Move from array_merge to avoid memory exhaustion
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-03-04 18:13:45 +01:00
Robin Appelman
63ffaab95e
fix types + autoloader
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-02-15 17:55:43 +01:00
Robin Appelman
2e14a7a4a6
optimize query pattern used by storage filter
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-02-15 17:55:40 +01:00
Maxence Lange
4e1814acd1
migrate metadata to lazy appconfig
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2024-02-14 13:30:27 -01:00
Robin Appelman
e9d97a568f
use OCP\Server
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-02-12 16:39:00 +01:00
Robin Appelman
e50c176428
also improe cache ci for shared cache
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-02-09 14:00:26 +01:00
Robin Appelman
7a91abb439
improve di performance for cache
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-02-09 13:28:30 +01:00
Christoph Wurst
67a3ab48b5
Merge pull request #43131 from nextcloud/fix/files/cache-wrapper-no-partial-cache-entry-formatting
...
fix(files): Don't attempt to format a partial cache entry
2024-02-06 13:51:51 +01:00
Robin Appelman
b777304a77
also updated parent etags when a changed etag is detected during scanning
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-01-31 18:06:18 +01:00
Robin Appelman
e14bceb63f
dont reuse etag for folders marked explicitly unscanned
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-01-31 18:05:09 +01:00
Christoph Wurst
7e5303bec7
fix(files): Don't attempt to format a partial cache entry
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-01-25 19:30:38 +01:00
Julius Härtl
cc75294eb6
perf: Avoid updating the folder size if we know the size difference
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-01-12 14:21:08 +01:00
Git'Fellow
394cd75322
Merge pull request #41272 from nextcloud/fixOccScans
...
fix: reduce memory consumption of scans
2023-11-28 11:36:59 +01:00
Joas Schilling
aa5f037af7
chore: apply changes from Nextcloud coding standards 1.1.1
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-23 10:36:13 +01:00
Maxence Lange
ee787cd1c6
Merge pull request #41459 from nextcloud/enh/noid/search-metadata-null
...
implements search on null/notnull metadata
2023-11-23 07:52:27 -01:00
Maxence Lange
7467422f57
implements search on null/notnull metadata
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-22 12:43:27 -01:00
Christoph Wurst
ea8f9a7e84
refactor: Repalce array_search with in_array in lib/
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-11-22 11:42:53 +01:00
Maxence Lange
761a688ec9
fix psalm
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-14 10:11:24 -01:00
Maxence Lange
3af12b2a50
ignore metadata if table is empty
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-14 09:28:58 -01:00
Maxence Lange
380b81315a
moving metadataquery
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-13 22:25:37 -01:00
Benjamin Gaussorgues
a75a93af8e
feat(files): Allow advanced search for files
...
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-10 09:21:16 +01:00
Louis Chemineau
d3a313f192
Support getting and setting metadata in DAV requests
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2023-11-08 16:23:53 +01:00
Maxence Lange
f497d8b6e5
IFilesMetadata
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-07 12:43:08 -01:00
Maxence Lange
e62e9e3dbf
IFilesMetadata
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2023-11-07 00:21:38 -01:00
Git'Fellow
b4a3773115
fix: reduce memory consumption of scans
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Fix lint
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2023-11-03 18:07:42 +01:00
Robin Appelman
460344336e
optimize cache jail creation
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-10-19 19:27:00 +02:00
Hamid Dehnavi
ea06cf2f39
Convert isset ternary to null coalescing operator
...
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2023-09-28 17:44:19 +03:30
Côme Chilliet
5090848b25
Store size in int|float for 32bit support
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-19 13:43:01 +02:00
Julius Härtl
13b9dd2267
fix: Only read unencrypted_size when file is actually encrypted
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-09-06 07:25:28 +02:00
Robin Appelman
9ea03a9534
reuse dependencies from wrapped cache
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-18 11:14:52 +02:00
Ferdinand Thiessen
9c04c07622
fix: Prevent PHP warnings when optional CacheEntry attributes are unset
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-08-16 14:12:51 +02:00
Robin Appelman
658aed27ea
select the fileid first when looking for incomplete files
...
this seems to improve mariadbs index selection
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-08-14 18:08:01 +02:00
John Molakvoæ
7b7d1e3c09
fix: simplify sourceData check
...
Co-authored-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2023-08-05 12:05:36 +02:00
Josh Richards
deecb48e54
Catch more invalid cache source storage paths
...
OC\Files\Cache\Cache::get can return string|false|null, not just string|false.
- nextcloud/server#26270 added handling of false, but null is needed too.
- Well, or we change the default $resullt to false, but I'm not sure if that has other ramifications and the real need here is to simply catch situations where the cache source storage path is not valid for whatever reason
Related: nextcloud/server#19009
Signed-off-by: Josh Richards <josh.t.richards@gmail.com>
2023-08-03 09:53:46 -04:00
Robin Appelman
c912a3f0f6
Merge pull request #38860 from nextcloud/scanner-change-summary
...
add summary of detected changes to files:scan output
2023-07-20 18:37:07 +02:00
Christoph Wurst
14719110b9
chore: Replace \OC::$server->query with \OCP\Server::get in /lib
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-07-06 15:21:22 +02:00
Julius Härtl
eddb64f8c3
Merge pull request #37969 from nextcloud/poc/noid/systemtags-perf-tag-endpoint
2023-06-28 07:53:35 +02:00
Robin Appelman
39a0554c09
Merge pull request #38858 from nextcloud/scanner-performance3
...
file scanner performance improvements
2023-06-26 17:01:18 +02:00
Arthur Schiwon
49db546f78
fix: include invisible tags for admins
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-06-21 20:28:01 +02:00