git-annex/doc/bugs/annex-rsync-upload-options_are_ignored.mdwn
2021-09-21 13:31:42 -04:00

153 lines
7.8 KiB
Markdown

### Please describe the problem.
git-annex doesn't seem to honor the remote.\<name\>.annex-rsync-upload-options or annex.rsync-upload-options anymore. The problem seems to be on the server side. I noticed it when upgrading the ancient git-annex on my server from the version in stretch (6.20170101, --bwlimit worked fine with that) to the version in stretch-backports (7.20190129, --bwlimit broken). On the client I'm running bullseye and git-annex version 8.20210223. I then upgraded git-annex on the server to 8.20210903, the rsync-options don't work with that either.
### What steps will reproduce the problem?
#### Client:
root@dition:/mnt/sneakerdisk9# mkdir testannex
root@dition:/mnt/sneakerdisk9# cd testannex
root@dition:/mnt/sneakerdisk9/testannex# git init
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
Initialized empty Git repository in /mnt/sneakerdisk9/testannex/.git/
root@dition:/mnt/sneakerdisk9/testannex# git annex init dition
init dition (scanning for unlocked files...)
ok
(recording state in git...)
root@dition:/mnt/sneakerdisk9/testannex# dd if=/dev/random of=bigtestfile bs=1MiB count=500
500+0 records in
500+0 records out
524288000 bytes (524 MB, 500 MiB) copied, 6.00526 s, 87.3 MB/s
root@dition:/mnt/sneakerdisk9/testannex# git annex add bigtestfile
add bigtestfile
ok
(recording state in git...)
#### Server:
dition@holm:/mnt/btrfs/testannex.git$ git init --bare
Initialized empty Git repository in /mnt/btrfs/testannex.git/
#### Client:
root@dition:/mnt/sneakerdisk9/testannex# git remote add holm ssh://dition@holm:1322/mnt/btrfs/testannex.git
root@dition:/mnt/sneakerdisk9/testannex# git push --all holm
Enumerating objects: 10, done.
Counting objects: 100% (10/10), done.
Delta compression using up to 4 threads
Compressing objects: 100% (7/7), done.
Writing objects: 100% (10/10), 871 bytes | 217.00 KiB/s, done.
Total 10 (delta 0), reused 0 (delta 0), pack-reused 0
To ssh://holm:1322/mnt/btrfs/testannex.git
* [new branch] git-annex -> git-annex
#### Server:
dition@holm:/mnt/btrfs/testannex.git$ git annex init holm
init holm ok
(recording state in git...)
#### Client:
root@dition:/mnt/sneakerdisk9/testannex# git config --add annex.rsync-upload-options "--bwlimit 1024"
root@dition:/mnt/sneakerdisk9/testannex# git annex sync
commit
[master (root-commit) d0f28fe] git-annex in dition
Committer: root <root@dition.tulpe>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly. Run the
following command and follow the instructions in your editor to edit
your configuration file:
git config --global --edit
After doing this, you may fix the identity used for this commit with:
git commit --amend --reset-author
1 file changed, 1 insertion(+)
create mode 120000 bigtestfile
ok
pull holm
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), 363 bytes | 121.00 KiB/s, done.
From ssh://holm:1322/mnt/btrfs/testannex
5ace97f..70df03f git-annex -> holm/git-annex
ok
(merging holm/git-annex into git-annex...)
push holm
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 314 bytes | 314.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To ssh://holm:1322/mnt/btrfs/testannex.git
* [new branch] git-annex -> synced/git-annex
* [new branch] master -> synced/master
ok
root@dition:/mnt/sneakerdisk9/testannex# git annex copy --to holm bigtestfile
copy bigtestfile (to holm...)
4% 19.27 MiB 3 MiB/s 2m31s
### What version of git-annex are you using? On what operating system?
#### Server:
Debian stretch amd64 with git-annex from the neurodebian repo
dition@holm:/mnt/btrfs/testannex.git$ git annex version
git-annex version: 8.20210903-1~ndall+1
build flags: Assistant Webapp Pairing Inotify DBus DesktopNotify TorrentParser MagicMime Feeds Testsuite S3 WebDAV
dependency versions: aws-0.22 bloomfilter-2.0.1.0 cryptonite-0.26 DAV-1.3.4 feed-1.3.0.1 ghc-8.8.4 http-client-0.6.4.1
persistent-sqlite-2.10.6.2 torrent-10000.1.1 uuid-1.3.13 yesod-1.6.1.0
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 S
HA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 BLAKE2B256E BLAKE2B256 BLAKE2B512E BLAKE2B51
2 BLAKE2B160E BLAKE2B160 BLAKE2B224E BLAKE2B224 BLAKE2B384E BLAKE2B384 BLAKE2BP512E BLAKE2BP512 BLAKE2S256E BLAKE2S256
BLAKE2S160E BLAKE2S160 BLAKE2S224E BLAKE2S224 BLAKE2SP256E BLAKE2SP256 BLAKE2SP224E BLAKE2SP224 SHA1E SHA1 MD5E MD5 WOR
M URL X*
remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav adb tahoe glacier ddar git-lfs httpalso borg
hook external
operating system: linux x86_64
supported repository versions: 8
upgrade supported from repository versions: 0 1 2 3 4 5 6 7
#### Client:
Debian bullseye arm64
root@dition:/mnt/sneakerdisk9# git annex version
git-annex version: 8.20210223
build flags: Assistant Webapp Pairing Inotify DBus DesktopNotify TorrentParser MagicMime Feeds Testsuite S3 WebDAV
dependency versions: aws-0.22 bloomfilter-2.0.1.0 cryptonite-0.26 DAV-1.3.4 feed-1.3.0.1 ghc-8.8.4 http-client-0.6.4.1 persistent-sqlite-2.10.6.2 torrent-10000.1.1 uuid-1.3.13 yesod-1.6.1.0
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 SHA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 BLAKE2B256E BLAKE2B256 BLAKE2B512E BLAKE2B512 BLAKE2B160E BLAKE2B160 BLAKE2B224E BLAKE2B224 BLAKE2B384E BLAKE2B384 BLAKE2BP512E BLAKE2BP512 BLAKE2S256E BLAKE2S256 BLAKE2S160E BLAKE2S160 BLAKE2S224E BLAKE2S224 BLAKE2SP256E BLAKE2SP256 BLAKE2SP224E BLAKE2SP224 SHA1E SHA1 MD5E MD5 WORM URL X*
remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav adb tahoe glacier ddar git-lfs httpalso borg hook external
operating system: linux aarch64
supported repository versions: 8
upgrade supported from repository versions: 0 1 2 3 4 5 6 7
I can also reproduce this with a debian buster client on amd64 with git-annex 8.20200330
### Please provide any additional information below.
As mentioned, the problem was introduced somewhere between 6.20170101 and 7.20190129.
annex.rsync-download-options "--bwlimit 1024" is ignored as well:
root@dition:/mnt/sneakerdisk9/testannex# git config --add annex.rsync-download-options "--bwlimit 1024"
root@dition:/mnt/sneakerdisk9/testannex# git annex get --from holm bigtestfile
get bigtestfile (from holm...)
10% 51.82 MiB 19 MiB/s 23s
### Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders)
I've been using git-annex for many years with great success. It's a pleasure to use, I don't know how I ever managed to get by without it!
> Closing as a duplicate of the bwlimit todo. [[done]] --[[Joey]]