Commit graph

1113 commits

Author SHA1 Message Date
Côme Chilliet
4d6fdad722 Make sure that path is normalized and then checked,
and not the other way around

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-10 18:06:07 +00:00
John Molakvoæ
e8a69778d3
Merge pull request #34770 from nextcloud/backport/34579/stable24
[stable24] fix null error in getUnencryptedSize
2022-10-27 18:12:46 +02:00
Vincent Petry
1524b5fd25
Merge pull request #34797 from nextcloud/backport/33540/stable24
[stable24] fix updating cached mounts that didn't have their mount provider set previously
2022-10-27 13:36:33 +02:00
John Molakvoæ
220d71d997
Merge pull request #34410 from nextcloud/backport/33566/stable24 2022-10-27 12:29:17 +02:00
raul
bdbacdffc2 Fix unencrypted size calculation for files created before the Encryption storage is enabled
Signed-off-by: raul <raul@nextcloud.com>
2022-10-25 15:08:22 +00:00
raul
ba12309f3c Fix: Prevent deadlocks during mtime/size/etag propagation
Signed-off-by: raul <raul@nextcloud.com>
2022-10-25 15:08:22 +00:00
Robin Appelman
dc0dcad920 fix updating cached mounts that didn't have their mount provider set previously
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-10-25 10:48:30 +00:00
Robin Appelman
29c359d7e7 fix null error in getUnencryptedSize
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-10-24 13:34:52 +00:00
Julius Härtl
19ed7a5bf6 Avoid allocating too much memory for the buffer
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-10-12 08:35:46 +00:00
Robin Appelman
8cf947f0da
trigger a rescan when trying to fopen a file that exists in cache but not on disk
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-10-06 14:30:14 +02:00
Carl Schwan
f072520cbd Filter out old files when trying to get recent files
Only do so when asking for less than 100 files and having an offset
equal to 0.

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-09-08 14:43:57 +00:00
Vincent Petry
e76bb271ec
Merge pull request #33749 from nextcloud/backport/33734/stable24
[stable24] remove leading slash for search results at mountpoint root
2022-09-01 09:27:59 +02:00
blizzz
7e980a1f1f
Merge pull request #33656 from nextcloud/backport/33574/stable24
[stable24] directly build the search filter for shared storage instead of setting up the source cache
2022-08-30 17:48:11 +02:00
Robin Appelman
ee8cabe2ce remove leading slash for search results at mountpoint root
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-08-30 10:24:30 +00:00
Robin Appelman
9cadbe811e directly build the search filter for shared storage instead of setting up the source cache
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-08-23 12:19:14 +00:00
Robin Appelman
9deae5b17a optimize search post-processing for jail wrapper
don't both asking the wrapped cache if we know it's not in our jail anyway

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-08-18 13:39:36 +02:00
Robin Appelman
ea9509eaf9 fix updating size when folder is empty
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-08-16 13:40:45 +02:00
blizzz
d81e38d296
Merge pull request #32273 from nextcloud/backport/32152/stable24
[stable24] Allow compatibility wrapper on local external storage
2022-08-04 11:42:56 +02:00
Robin Appelman
afdeae2cc2 don't set null as a bundle path
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-07-27 13:46:34 +00:00
Vincent Petry
a2166864d4
Merge pull request #33326 from nextcloud/backport/33308/stable24
[stable24] always triger setup of builtin storage wrappers
2022-07-25 17:04:19 +02:00
blizzz
22822a836d
Merge pull request #33252 from nextcloud/backport/32963/stable24
[stable24] also use nextcloud certificate bundle when downloading from s3
2022-07-22 23:54:41 +02:00
Robin Appelman
2c6cd0daf8 always triger setup of builtin storage wrappers
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-07-22 20:24:35 +00:00
Jonas
786317e1cb
Fix listening for circle events in SetupManager
So far, SetupManager listened for deprecated events that are no longer
triggered. Instead, use the circle events that actually get triggered
when adding or removing a circle or circle member. Also, these events
get triggered on each instance of a globalscale setup.

Fixes: #33210

Signed-off-by: Jonas <jonas@freesources.org>
2022-07-18 21:09:37 +01:00
Robin Appelman
d4de68f1d4 only use nextcloud bundle when explicitly enabled
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-07-18 07:54:55 +00:00
Robin Appelman
e640ee4720 also use nextcloud certificate bundle when downloading from s3
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-07-18 07:54:54 +00:00
Jonas
aec0899efd Check whether entry is of type ICacheEntry in Cache->remove()
In some scenarios (file not in cache, but partial data of it in the
object), Cache->get() might return an array, which leads to errors like
"Call to a member function getId() on array".

So check whether the returned entry is of type ICacheEntry before doing
operations on it in Cache->remove().

Fixes: #33023

Signed-off-by: Jonas <jonas@freesources.org>
2022-06-30 12:25:26 +00:00
Carl Schwan
de4f7b5c9c Fix metadata extraction
The metadata extraction only happens when the size is not equal to 0,
but due to a regression in FileInfo the size is always zero.

This fix the regression.

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-06-28 13:37:59 +00:00
blizzz
eeb4de0763
Merge pull request #32708 from nextcloud/unencrypted-size-24
[24] store unencrypted size in the unencrypted_size column
2022-06-11 00:42:34 +02:00
Vincent Petry
7ba6738031
Merge pull request #32801 from nextcloud/backport/32797/stable24
[stable24] fix mounts mounted at the users home
2022-06-10 14:47:03 +02:00
Robin Appelman
787b10ba2f perform onetime setup earlier to ensure wrappers are registered on time
this fixes an issue with wrappers like encryption not always being applied to mountpoint that create the storage object directly (such as external storage)

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-06-10 09:26:14 +00:00
Vincent Petry
3a3c3b5e1d
Merge pull request #32710 from nextcloud/backport/32662/stable24
[stable24] Cleanup temporary files after finishing the write to object storage
2022-06-10 11:09:26 +02:00
Robin Appelman
b110026909 fix mounts mounted at the users home
this fixes external storages with '/' as mountpoint

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-06-09 23:23:16 +00:00
Robin Appelman
00e6eb2612 handle stream wrappers in SeekableHttpStream
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-06-09 07:58:35 +00:00
Robin Appelman
fd2afe604e
store unencrypted size in the unencrypted_size column
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-06-03 15:43:50 +02:00
Julius Härtl
109bbf31db Cleanup temporary files after finishing the write to object storage
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-06-02 16:28:20 +00:00
Robin Appelman
32cd1bed38 tell mysql to ignore the sort index for search queries
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-05-16 09:53:43 +00:00
Vincent Petry
4f86a5051f Allow compatibility wrapper on local external storage
The check was likely in place to prevent adding the wrapper on the root
and home storage, which is not possible anyway since the encoding option cannot
be set on that mount.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2022-05-05 06:22:24 +00:00
Robin Appelman
aae1769e60 Only need to setup root for groupfolders
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-25 17:39:29 +00:00
Robin Appelman
9dcc9b50e9
optimize adding submount info to directory content
no need to loop when we can do a hashtable lookup

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-25 16:28:05 +02:00
Robin Appelman
79672ed6d6 Use a lazy user for the file owner when listing a directory
Only getUID and getDisplayName are called on the file owner objects anyway
and we can get this information often without DB request

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-25 14:59:29 +02:00
Robin Appelman
c727beba9f only register mounts that are new from providers that are new during a full setup
this fixes cases where during the (partial) setup of a shared mount a full setup is triggered

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-22 15:06:30 +00:00
blizzz
98a260940f
Merge pull request #32066 from nextcloud/backport/32045/stable24
[stable24] cache fullSetupRequired locally
2022-04-22 15:46:09 +02:00
blizzz
b9bfd5aba8
Merge pull request #32027 from nextcloud/backport/32024/stable24
[stable24] ignore forbidden files while scanning local storage
2022-04-22 11:38:04 +02:00
Robin Appelman
f7a0157589 cache fullSetupRequired locally
no need to hit redis every time

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-22 09:36:02 +00:00
Robin Appelman
29dc5c8cb5 ignore forbidden files while scanning local storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-20 12:39:32 +00:00
Arthur Schiwon
543277cb43 log stacktrace for 'Backends provided no user object'
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-04-20 12:26:41 +00:00
Carl Schwan
7817845538 Add a metadata service to store file metadata
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-04-13 14:06:29 +02:00
Robin Appelman
b65d214f15
perform a setup if we can't find any mounts containing a file
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-11 19:15:58 +02:00
Vincent Petry
1b819b8649
Merge pull request #31901 from nextcloud/fs-setup-tweaks
Filesystem setup tweaks
2022-04-08 17:47:36 +02:00
Vincent Petry
0d7d28e530
Merge pull request #31676 from nextcloud/enh/ocp-owner-lock
Add public API for owner based file locking
2022-04-08 17:43:26 +02:00