-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Rclone not supported because of one move command #2831
Comments
Hmm, so I believe Immich uses clobber to avoid overwriting existing files. The underlying package seems to assume that linking the file will implicitly not overwrite the destination, and is backed up by the documentation on link.
Immich should probably just check if the file exists manually instead. This does introduce a potential race condition, though it may be behaviour which should just be accepted. |
I wonder then what is the desired behavior. The |
I believe
|
Are we talking about the same thing here? The |
I think so. If you read the source for |
Ah, I misunderstood the reference to |
The bug
If I'm reading the source code correctly, the reason Immich currently doesn't support
rclone
mounted backends (see #1899, #1683) is simply because:clobber: false
, which Immich is currently using), which:mv
will unlink the source file, thus having "moved" the file from source to destination.Now, the problem is,
rclone
doesn't support hard links. Hence the move operation fails halfway with theENOSYS: function not implemented, link ...
error mentioned in the issues linked above.I don't have a thorough understanding of the way Immich is supposed to work here, but if the point is to move the files and nothing more, it seems to me we could achieve full
rclone
compatibility—and with it support for countless storage backends—simply by reworking the move command (say, by usingfs.rename(sourcePath, desPath);
or something).The OS that Immich Server is running on
Docker
Version of Immich Server
latest
Version of Immich Mobile App
latest
Platform with the issue
Your docker-compose.yml content
not relevant
Your .env content
Reproduction steps
Additional information
No response
The text was updated successfully, but these errors were encountered: