Commit graph

33276 commits

Author SHA1 Message Date
Joey Hess
abe4b7ebd6
importfeed: Avoid erroring out when a feed has been repeatedly broken
That can leave other imported files not checked into git, because the git
command queue is not flushed when git-annex errors out. And since it only
happens once git-annex has concluded a feed is broken, it's an intermittent
bug, worst kind. Been seeing it for a while, only tracked down today.

Instead, by returning False, git-annex importfeed will cleanly shutdown and
still exit nonzero.

This commit was sponsored by Denis Dzyubenko on Patreon.
2018-11-04 17:41:49 -04:00
seantparsons
8570c07d49 2018-11-04 20:59:39 +00:00
anarcat
cb122b9d1e Added a comment: rsync can do this on its own 2018-11-04 19:29:19 +00:00
Joey Hess
7f15339162
update 2018-11-04 15:06:06 -04:00
anarcat
d621846ab8 Added a comment: workaround with youtube-dl 2018-11-03 20:52:49 +00:00
anarcat
16cbeb6aff Added a comment: oops 2018-11-03 19:52:48 +00:00
spwhitton
f09f846fea Added a comment 2018-11-03 19:41:32 +00:00
anarcat
4241de01c8 p2pstdio doesn't exist in stretch and buster doesn't degrade gracefully 2018-11-03 19:30:29 +00:00
admin
55fca72138 removed 2018-11-03 05:24:04 +00:00
andrew
0dc9e68cdb Added a comment 2018-11-02 22:03:15 +00:00
yarikoptic
c6cb372a9d Added a comment: tests fail - can't build to test the change 2018-11-02 21:51:16 +00:00
yarikoptic
4d24b712b0 Added a comment 2018-11-02 19:58:06 +00:00
Joey Hess
0c05b92b7c
Merge branch 'master' of ssh://git-annex.branchable.com 2018-11-02 13:45:57 -04:00
Joey Hess
c371a8b10e
followup 2018-11-02 13:42:57 -04:00
Joey Hess
0b053b9611
Fix a P2P protocol hang
When readContent got Nothing from prepSendAnnex, it did not run its
callback, and the callback is what sends the DATA reply.

sendContent checks with contentSize that the object file is present, but
that doesn't really guarantee that prepSendAnnex won't return Nothing.

So, it was possible for a P2P protocol GET to not receive a response,
and appear to hang. When what it's really doing is waiting for the next
protocol command.

This seems most likely to happen when the annex is in direct mode, and the
file being requested has been modified. It could also happen in an indirect
mode repository if genInodeCache somehow failed. Perhaps due to a race
with a drop of the content file.

Fixed by making readContent behave the way its spec said it should,
and run the callback with L.empty in this case.

Note that, it's finee for readContent to send any amount of data
to the callback, including L.empty. sendBytes deals with that
by making sure it sends exactly the specified number of bytes,
aborting the protocol if it's too short. So, when L.empty is sent,
the protocol will end up aborting.

This work is supported by the NIH-funded NICEMAN (ReproNim TR&D3) project.
2018-11-02 13:41:50 -04:00
marvin@3296bf3c446430c3b2ebc32b5c784ee976620847
39bff661b0 Added a comment 2018-11-02 08:57:40 +00:00
Ilya_Shlyakhter
a68d4705b1 Added a comment 2018-11-01 17:13:00 +00:00
andrew
e6f90c1f87 Added a comment 2018-11-01 12:24:10 +00:00
andrew
af385e2d34 Added a comment 2018-11-01 12:15:35 +00:00
andrew
937d9d545a Added a comment 2018-11-01 12:02:59 +00:00
yarikoptic
0753ad46c2 It was "user error", things work now properlyish 2018-11-01 03:53:02 +00:00
Joey Hess
5ad5d45d4c
make Arbitrary POSIXTime include decimal half the time 2018-10-31 16:27:55 -04:00
Joey Hess
2ca408dc33
Increase minimum QuickCheck version. 2018-10-31 15:53:22 -04:00
Joey Hess
9c74ea84ab
add news item for git-annex 7.20181031 2018-10-31 15:47:37 -04:00
Joey Hess
8f9278787f
releasing package git-annex version 7.20181031 2018-10-31 15:46:57 -04:00
Joey Hess
37d00ca671
response 2018-10-31 13:50:51 -04:00
Joey Hess
6d8b8a3275
remove unused import 2018-10-31 12:58:53 -04:00
Joey Hess
83fc3692b9
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-31 12:44:12 -04:00
Adam.Schmalhofer@245dc7fa3c05299fc8973ae4241bcab07cd36140
506283c3f9 initial issue description 2018-10-31 15:51:04 +00:00
Ilya_Shlyakhter
8673c18f41 removed 2018-10-31 14:53:50 +00:00
Joey Hess
b5a6dfc779
close smudge, open transition tracking item 2018-10-31 08:31:07 -04:00
Joey Hess
77fbe17b5e
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-31 08:07:08 -04:00
Joey Hess
89ac32616f
don't move keys db out from under sqlite
Instead remove enough data from it that this regression test tests what
it needs to.

Moving the database was the last thing that made the test suite
unstable, including sometimes hanging completely. It seems that, despite
closeDb being called before the move, sqlite was not quite done with it,
and somehow this causes other sqlite handles to become unstable. Not
good.

With this change, the test suite has successfully run 100+ times without
any issues.
2018-10-31 08:04:16 -04:00
Joey Hess
1c71f563e0
explicitly close keys db in saveState
Should be redundant, but test suite is ending up with
a lot of extra sqlite connections before unused keys database handles
get garbage collected.

While running the test suite, I often saw 2-4+ open fds to the same
repo's keys database. After this change, it seems to mostly have 1,
occasionally 2.

And that might explain some of the strange sqlite failures in the test suite.
Especially the failures of test_lock_v7_force, where the keys database
gets renamed to a new directory out from under sqlite.
2018-10-30 22:19:32 -04:00
Joey Hess
fcc9eea554
avoid closeDb opening the db if it's not already open 2018-10-30 22:19:05 -04:00
Gus
a1379fe56b Added a comment: Nice! 2018-10-30 22:14:43 +00:00
Joey Hess
b144622d0d
devblog 2018-10-30 18:11:11 -04:00
Joey Hess
1428568554
retry when sqlite throws ErrorIO
I suspect this may be due to SQLITE_IOERR_SHORT_READ, but have not
verified.

I was able to reproduce it on Linux after running the test suite in a loop
for 1-3 hours until it failed.

The WAL mode entry change in 3963c5fcf5
may have hidden the problem I was seeing; I have not seen an ErrorIO
since then.
2018-10-30 18:06:38 -04:00
Joey Hess
3963c5fcf5
better approach to enabling WAL mode
The old approach opened the database an extra time to enable WAL mode,
but more recent persistent-sqlite has a better API to enable it.
2018-10-30 13:47:38 -04:00
Joey Hess
f00b329e0c
remove unused import 2018-10-30 13:38:29 -04:00
Joey Hess
a89db2c604
link to bug report blob
delete from tree
2018-10-30 12:07:38 -04:00
Joey Hess
57107cf213
sqlite bug report that the developers never responded to
Adding to git-annex's history so it doesn't get lost; the gmane archive
of it is long gone.
2018-10-30 12:04:28 -04:00
Joey Hess
718915e9fc
improve comments 2018-10-30 11:52:05 -04:00
Joey Hess
9e41a86706
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-30 11:10:21 -04:00
Joey Hess
86df2a08fe
fix windows build 2018-10-30 11:09:45 -04:00
Joey Hess
cc1087de42
test: display error messages from git-annex on unexpected failures
.. but not on expected failures
2018-10-30 10:49:39 -04:00
CandyAngel
2e0cc99b13 Add note about caching annex fulfilling this usage 2018-10-30 13:21:23 +00:00
Joey Hess
6956f533fe
better method of waiting for new mtime
This will even work on eg FAT with its 1-2 second mtime granularity. And
without slowing down everything else.
2018-10-30 01:11:04 -04:00
Joey Hess
c75807ba3a
remove note about ghc bug
ghc 8.6 fixed that, apparently
2018-10-30 00:51:14 -04:00
Joey Hess
86c316ab0f
Merge branch 'master' of ssh://git-annex.branchable.com 2018-10-30 00:46:16 -04:00