Merge branch 'master' of ssh://git-annex.branchable.com

This commit is contained in:
Joey Hess 2019-09-27 12:47:30 -04:00
commit add8632910
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
5 changed files with 106 additions and 0 deletions

View file

@ -0,0 +1,13 @@
I looked into post-receive hook of an arbitrary git/git-annex repo to find
[[!format sh """
(git-annex)hopa:/tmp/testds/.git/hooks[master]
$> cat post-receive
#!/bin/sh
# automatically configured by git-annex
if git annex post-receive --help >/dev/null 2>&1; then git annex post-receive; fi
"""]]
and wondered why it actually needs conditioning? `--help` runs for me longer (40-50ms) than actual `git annex post-receive` call (20ms) when there is nothing todo. So I wondered why wasting time on `--help`?
[[!meta author=yoh]]

View file

@ -0,0 +1,61 @@
[[!comment format=mdwn
username="oliv5"
avatar="http://cdn.libravatar.org/avatar/d7f0d33c51583bbd8578e4f1f9f8cf4b"
subject="comment 6"
date="2019-09-26T20:39:41Z"
content="""
The lock issue seems confirmed here. And the \"nobrl\" mount option solves the issue.
Maybe you should inform the user about \"nobrl\" & \"annex.pidlock\" during the \"git annex init\" filesystem check, refuse to go on and propose legacy direct mode instead if user cannot accept to have no filesystem locking ?
Without changing my mount options:
SQLite version 3.27.2 2019-02-25 16:06:06
Enter \".help\" for usage hints.
sqlite> PRAGMA journal_mode=WAL;
Error: database is locked
sqlite> create table foo (name varchar);
Error: database is locked
sqlite> insert into foo (name) values (\"joey\");
Error: no such table: foo
sqlite> .exit
After adding \"nobrl\" in the mount options:
SQLite version 3.27.2 2019-02-25 16:06:06
Enter \".help\" for usage hints.
sqlite> PRAGMA journal_mode=WAL;
wal
sqlite> create table foo (name varchar);
sqlite> insert into foo (name) values (\"joey\");
sqlite> .exit
It seems \"nolock\" is an alias for \"nobrl\", results are the same; when I put \"nolock\" in the mount options, I end up with \"nobrl\" in the \"mount\" command output.
Finally, with the \"nobrl\" mount option:
$ cd /media/mydisk/tmp/
$ date > file1
$ git init .
Dépôt Git vide initialisé dans /media/mydisk/tmp/.git/
$ git annex init test
init test
Detected a filesystem without fifo support.
Disabling ssh connection caching.
Detected a crippled filesystem.
Entering an adjusted branch where files are unlocked as this filesystem does not support locked files.
Basculement sur la branche 'adjusted/master(unlocked)'
ok
(recording state in git...)
$ git annex add file1
add file1 ok
(recording state in git...)
Hurray !
"""]]