H25E
February 15, 2024, 1:27pm
1
I don’t really know where to place this, please move it to a proper category if it exists.
I see that the native nextcloud client and NC server don’t support delta-sync, which is useful for situations where there are big files that change a little fraction of their content.
There is any hack to achieve that? If I mount the a NC folder in a linux system with davfs2 and I make small changes to the file, would this changes propagate as they are like in a normal filesystem or would the whole file be sent through the network?
If not, could I use owncloud client? (Seems like they support delta sync).
If not, there is any other way?
This would be for a single client, a headless server connected through 4G, so it doesn’t need to be scalable, powerful or CPU efficient. It simply has to do the job saving data.
Thanks for your time!
tflidd
February 16, 2024, 3:02pm
2
owncloud pushed it a bit and tried to include it, but the pull request was not merged:
owncloud:master
← ahmedammar:master
opened 12:37PM - 11 Jan 18 UTC
This commit adds client-side support for delta-sync, this adds a new
3rdparty s… ubmodule gh:ahmedammar/zsync. This zsync tree is a modified
version of upstream, adding some needed support for the upload path and
other requirements.
If the server does not announce the required zsync capability then a
full upload/download is fallen back to. Delta synchronization can be
enabled/disabled using command line, config, or gui options.
On both upload and download paths, a check is made for the existance of
a zsync metadata file on the server for a given path. This is provided
by a dav property called `zsync`, found during discovery phase. If it
doesn't exist the code reverts back to a complete upload or download,
i.e. previous implementations. In the case of upload, a new zsync
metadata file will be uploaded as part of the chunked upload and future
synchronizations will be delta-sync capable.
Chunked uploads no longer use sequential file names for each chunk id,
instead, they are named as the byte offset into the remote file, this is
a minimally intrusive modification to allow fo delta-sync and legacy
code paths to run seamlessly. A new http header OC-Total-File-Length is
sent, which informs the server of the final expected size of the file
not just the total transmitted bytes as reported by OC-Total-Length.
The seeding and generation of the zsync metadata file is done in a
separate thread since this is a cpu intensive task, ensuring main thread
is not blocked.
This commit closes owncloud/client#179.
For Nextcloud there are a few references on the bug tracker:
opened 05:48PM - 15 Jul 16 UTC
enhancement
1. to develop
feature: files
performance 🚀
Hi all,
Delta Sync would be great for my truecrypt/veracrypt huge files (~30-… 100gb). Without delta sync I must stay absent from this product.
Delta Sync would also provide you a feature to distinguish from owncloud
Couldn't there be an optional (maybe extension / folder / file -based) mechanism to perform Delta Sync ("optionally" as I agree that Delta Sync does not make sense for all kind of files/folders)? Maybe even using something existing like rsync?
opened 07:07PM - 15 Feb 18 UTC
closed 03:22PM - 07 May 18 UTC
Would provide a solution for [issue #417 requesting longterm delta sync](https:/… /github.com/nextcloud/server/issues/417) and [issue #230 for Nextcloud and Owncloud requesting LAN Sync](https://github.com/owncloud/client/issues/230). Also supports transferring more than one file simultaneously. Would be fantastic if these services all played nice together.
[Link to discussion in Nextcloud Forum.](https://help.nextcloud.com/t/integrating-syncthing-with-nextcloud-and-owncloud/27590)
[Link to discussion in Syncthing Forum.](https://forum.syncthing.net/t/integrate-syncthing-with-nextcloud-and-owncloud/11289)
opened 10:11AM - 24 May 20 UTC
enhancement
approved
Hello,
I'm in Africa and we have both a slow and expensive bandwidth (illimit… ed plans are very rare). In addition, in a climate change perspective, it would be useful to limit bandwidth usage over large distances to save energy. In order to optimize this, we'd like to have the ability to sync over a LAN ~~both with the server if it's on the LAN, and especially~~ with other clients on the same LAN, who have already synced.
It is a cool and efficient existing Dropbox feature (https://help.dropbox.com/installs-integrations/sync-uploads/lan-sync-overview). And a lot of discussions have already started, both on owncloud and Nextcloud, but it looks like there's no activity anymore for years (https://github.com/nextcloud/server/issues/7092, https://github.com/nextcloud/server/issues/8331, https://github.com/owncloud/client/issues/230).
Would it be possible to consider this feature? Thank you!
For reference, other links where this feature is requested:
Nextcloud:
- https://help.nextcloud.com/t/lan-sync-please/512
owncloud:
- https://central.owncloud.org/t/lan-sync-between-clients/4205
- https://central.owncloud.org/t/gsoc-2017-fast-lan-sync/6271
- https://github.com/owncloud/core/issues/26752
- https://github.com/owncloud/client/issues/230
### Client configuration
Client version: 2.6.4stable-Win64 (build 20200303)
For a workaround, you could use syncthing to sync all the clients together, run syncthing also on your server, then use this local folder and include it in Nextcloud (if you need access via web interface).