rclone/backend
nielash 2b0a25a64d memory: fix deadlock in operations.Purge
Before this change, the Memory backend had the potential to deadlock under
certain conditions, if the ListR callback required locking the b.mu mutex. This
was the case with operations.Purge, because Memory has no Purge method, and the
fallback option does:

	err = DeleteFiles(ctx, listToChan(ctx, f, dir))

which potentially starts removing objects before the listing has completed.

This change fixes the issue by batching all the entries before calling the
callback on them.
2024-03-27 11:42:49 -04:00
..
alias local: implement modtime and metadata for directories 2024-02-28 16:09:04 +00:00
all Add a new backend for uloz.to 2024-03-26 09:46:47 +00:00
azureblob azureblob: fix data corruption bug #7590 2024-01-24 11:28:05 +00:00
azurefiles azure-files: fix storage base url 2023-12-18 14:15:13 +00:00
b2 b2: Add new cleanup and cleanup-hidden backend commands. 2024-03-23 18:07:02 +00:00
box backend: fs implements the Shutdowner interface 2023-12-09 11:44:50 +00:00
cache cache: fix crash in tests which assumed local could Purge 2024-02-29 17:55:36 +00:00
chunker cache,chunker,combine,compress,crypt,hasher,union: implement MkdirMetadata and related Features 2024-02-28 16:09:04 +00:00
combine combine: fix CopyDirMetadata error on upstream root 2024-03-07 11:09:07 +00:00
compress Improve error messages when objects have been corrupted on transfer - fixes #5268 2024-03-23 12:35:35 +00:00
crypt Improve error messages when objects have been corrupted on transfer - fixes #5268 2024-03-23 12:35:35 +00:00
drive drive: fix server side copy with metadata from my drive to shared drive 2024-03-26 11:16:22 +00:00
dropbox backend: rename variables to fix CI lint test failures 2024-02-12 12:49:00 -05:00
fichier fichier: fix error code parsing 2023-08-11 00:47:01 +09:00
filefabric filefabric: use atomic types 2023-08-22 12:52:13 +01:00
ftp ftp: fix mkdir with rsftp which is returning the wrong code 2024-02-07 22:09:56 +00:00
googlecloudstorage gcs: fix 400 Bad request errors when using multi-thread copy 2023-11-20 18:07:05 +00:00
googlephotos backend: rename variables to fix CI lint test failures 2024-02-12 12:49:00 -05:00
hasher hasher: look for cached hash if passed hash unexpectedly blank 2024-03-09 11:58:02 +00:00
hdfs hdfs: added support for list of namenodes in hdfs remote config 2023-11-13 15:55:52 +00:00
hidrive backend: fs implements the Shutdowner interface 2023-12-09 11:44:50 +00:00
http http: implement set backend command to update running backend 2023-11-20 18:07:05 +00:00
imagekit imagekit: Added ImageKit backend 2023-11-24 18:18:01 +00:00
internetarchive fs: implement --metadata-mapper to transform metatadata with a user supplied program 2023-11-18 17:49:35 +00:00
jottacloud backend: fs implements the Shutdowner interface 2023-12-09 11:44:50 +00:00
koofr rclone config redacted: implement support mechanism for showing redacted config 2023-07-07 16:25:14 +01:00
linkbox linkbox: fix list paging and optimized synchronization. 2024-03-24 12:05:58 +00:00
local local: add --local-time-type to use mtime/atime/btime/ctime as the time 2024-03-26 11:58:28 +00:00
mailru rclone config redacted: implement support mechanism for showing redacted config 2023-07-07 16:25:14 +01:00
mega docs: fix typos found by codespell in docs and code comments 2023-09-23 12:20:01 +01:00
memory memory: fix deadlock in operations.Purge 2024-03-27 11:42:49 -04:00
netstorage netstorage,quatrix,seafile: fix Root to return correct directory when pointing to a file 2024-03-07 14:44:45 +00:00
onedrive onedrive: fix "unauthenticated: Unauthenticated" errors when downloading 2024-03-23 12:08:35 +00:00
opendrive opendrive: fix moving file/folder within the same parent dir - #7591 2024-02-21 18:02:19 +00:00
oracleobjectstorage oracleobjectstorage: supports workload identity authentication for OKE 2024-02-20 16:25:59 +00:00
pcloud backend: fs implements the Shutdowner interface 2023-12-09 11:44:50 +00:00
pikpak backend: rename variables to fix CI lint test failures 2024-02-12 12:49:00 -05:00
premiumizeme backend: fs implements the Shutdowner interface 2023-12-09 11:44:50 +00:00
protondrive protondrive: fix encoding of Root method 2024-03-07 14:44:45 +00:00
putio rclone config redacted: implement support mechanism for showing redacted config 2023-07-07 16:25:14 +01:00
qingstor rclone config redacted: implement support mechanism for showing redacted config 2023-07-07 16:25:14 +01:00
quatrix netstorage,quatrix,seafile: fix Root to return correct directory when pointing to a file 2024-03-07 14:44:45 +00:00
s3 s3: validate CopyCutoff size before copy 2024-03-23 15:09:38 +00:00
seafile netstorage,quatrix,seafile: fix Root to return correct directory when pointing to a file 2024-03-07 14:44:45 +00:00
sftp sftp: set DirModTimeUpdatesOnWrite to fix integration tests 2024-03-01 11:29:08 +00:00
sharefile backend: fs implements the Shutdowner interface 2023-12-09 11:44:50 +00:00
sia rclone config redacted: implement support mechanism for showing redacted config 2023-07-07 16:25:14 +01:00
smb smb: fix shares not listed by updating go-smb2 2023-11-29 15:39:27 +00:00
storj storj: update storj.io/uplink to v1.12.0 2023-09-14 14:01:35 +01:00
sugarsync rclone config redacted: implement support mechanism for showing redacted config 2023-07-07 16:25:14 +01:00
swift swift: Avoid unnecessary container versioning check 2024-02-20 15:52:25 +00:00
ulozto Add a new backend for uloz.to 2024-03-26 09:46:47 +00:00
union cache,chunker,combine,compress,crypt,hasher,union: implement MkdirMetadata and related Features 2024-02-28 16:09:04 +00:00
uptobox rclone config redacted: implement support mechanism for showing redacted config 2023-07-07 16:25:14 +01:00
webdav owncloud: add config owncloud_exclude_mounts which allows to exclude mounted folders when listing remote resources 2024-03-13 17:09:10 +00:00
yandex yandex: fix 400 Bad Request on transfer failure 2023-06-11 11:11:43 +01:00
zoho zoho: remove Range requests workarounds to fix integration tests 2023-09-05 18:21:15 +01:00