Commit graph

40683 commits

Author SHA1 Message Date
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
50c2bd49e5 Added a comment 2021-10-06 21:10:34 +00:00
Joey Hess
e9b0cf08eb
branch 2021-10-06 17:08:57 -04:00
Joey Hess
153f3600fb
progress in my head 2021-10-06 14:45:12 -04:00
Joey Hess
cc66c9f9ad
Merge branch 'master' of ssh://git-annex.branchable.com 2021-10-06 09:04:12 -04:00
falsifian
ce0a9ead23 Added a comment 2021-10-06 03:36:02 +00:00
Joey Hess
65cf6fb7fc
remove unused imports 2021-10-05 21:27:06 -04:00
Joey Hess
620813b889
minor optimisation 2021-10-05 21:26:11 -04:00
Joey Hess
68b4fc6018
Merge branch 'master' of ssh://git-annex.branchable.com 2021-10-05 20:28:26 -04:00
Joey Hess
f2846d803c
remove old and uncessary sanity check
All backends use genKeyName, which uses preSanitizeKeyName, which will
escape newlines.

I suspect this newline prevention was added back when git-annex was
reading the output of sha1sum..

Sponsored-by: Kevin Mueller on Patreon
2021-10-05 20:25:51 -04:00
Joey Hess
19e78816f0
convert Key to ShortByteString
This adds the overhead of a copy when serializing and deserializing keys.
I have not benchmarked much, but runtimes seem barely changed at all by that.

When a lot of keys are in memory, it improves memory use.

And, it prevents keys sometimes getting PINNED in memory and failing to GC,
which is a problem ByteString has sometimes. In particular, git-annex sync
from a borg special remote had that problem and this improved its memory
use by a large amount.

Sponsored-by: Shae Erisson on Patreon
2021-10-05 20:20:08 -04:00
Joey Hess
012b71e471
comment and correct incorrect info in previous comment 2021-10-05 19:05:20 -04:00
tomdhunt
a40f70b388 Added a comment 2021-10-05 22:07:45 +00:00
tomdhunt
3718dc0fbe Added a comment 2021-10-05 21:30:03 +00:00
Joey Hess
337b656de5
Merge branch 'master' of ssh://git-annex.branchable.com 2021-10-05 17:20:53 -04:00
Joey Hess
250c031d06
comment 2021-10-05 17:20:32 -04:00
bjornw@6a7d7d0413efc7ed3bb44922586f040bb768b71c
2daf299543 Added a comment: Thanks! 2021-10-05 21:09:44 +00:00
falsifian
b4cd008853 Added a comment 2021-10-05 20:55:32 +00:00
Joey Hess
1d23d8463a
update 2021-10-05 16:51:54 -04:00
Joey Hess
fac1954b60
Merge branch 'master' of ssh://git-annex.branchable.com 2021-10-05 16:33:44 -04:00
Joey Hess
c69a5af531
comment 2021-10-05 16:32:10 -04:00
Joey Hess
1dc82f177f
use bytestring filepaths more
This should be more efficient, and allocate less.

Sponsored-by: Graham Spencer on Patreon
2021-10-05 15:44:02 -04:00
tomdhunt
f72ac0249a Added a comment 2021-10-05 19:08:23 +00:00
Joey Hess
45dfddd33f
convert ExportLocation to ShortByteString to avoid PINNED memory fragmentation
This adds the overhead of a copy whenever converting to/from ExportLocation and
ImportLocation.

borg: Some improvements to memory use when importing a lot of archives.
(It's still pretty bad.)

Sponsored-by: Mark Reidenbach on Patreon
2021-10-05 14:51:55 -04:00
Joey Hess
8b4f331b09
update 2021-10-05 13:24:31 -04:00
Joey Hess
368ceb93fe
comment 2021-10-05 13:11:20 -04:00
Joey Hess
9a742f6e42
response 2021-10-05 12:16:18 -04:00
Joey Hess
a8ceb2b64e
promote comment to bug 2021-10-05 11:55:33 -04:00
Joey Hess
e217d88cd6
Merge branch 'master' of ssh://git-annex.branchable.com 2021-10-05 11:11:44 -04:00
Joey Hess
35f00926da
update 2021-10-05 10:43:27 -04:00
Joey Hess
6ec67133a5
comment 2021-10-03 18:45:37 -04:00
tomdhunt
db55bec8b4 Added a comment: Memory issues 2021-10-03 22:30:04 +00:00
Joey Hess
4380d8c117
Merge branch 'master' of ssh://git-annex.branchable.com 2021-10-03 18:18:30 -04:00
Joey Hess
ee31698825
remove errant print debug 2021-10-03 18:18:04 -04:00
falsifian
e07931845b 2021-10-03 17:06:21 +00:00
jkniiv
0d664d0d33 Added a comment 2021-10-02 19:58:17 +00:00
spwhitton
3b4e56c760 Added a comment 2021-10-02 17:04:02 +00:00
Joey Hess
6fcf4ef3cf
remove information about old version of debian 2021-10-02 12:32:00 -04:00
alex@f04d0d3c452a2a99b27ccc93c1543bee4a1bf5be
d26edf91a4 Added a comment: Resuming an interrupted download 2021-10-01 23:27:31 +00:00
alex@f04d0d3c452a2a99b27ccc93c1543bee4a1bf5be
f808f035bd removed 2021-10-01 23:22:19 +00:00
alex@f04d0d3c452a2a99b27ccc93c1543bee4a1bf5be
3a86a15e47 Added a comment: Resuming an interrupted download 2021-10-01 23:18:33 +00:00
Joey Hess
9012fa0187
reinject: Fix crash when reinjecting a file from outside the repository
Commit 4bf7940d6b introduced this
problem, but was otherwise doing a good thing. Problem being
that fileRef "/foo" used to return ":./foo", which was actually wrong,
but as long as there was no foo in the local repository, catKey
could operate on it without crashing. After that fix though, fileRef
would return eg "../../foo", resulting in fileRef returning
":./../../foo", which will make git cat-file crash since that's
not a valid path in the repo.

Fix is simply to make fileRef detect paths outside the repo and return
Nothing. Then catKey can be skipped. This needed several bugfixes to
dirContains as well, in previous commits.

In Command.Smudge, this led to needing to check for Nothing. That case
should actually never happen, because the fileoutsiderepo check will
detect it earlier.

Sponsored-by: Brock Spratlen on Patreon
2021-10-01 14:06:34 -04:00
Joey Hess
b2efbd1cd3
fix bug in dirContains
dirContains "." ".." was incorrectly true
because normalize ("." </> "..") = ".."

Sponsored-by: Jochen Bartl on Patreon
2021-10-01 13:53:21 -04:00
Joey Hess
e8959617b6
fix bug in dirContains
dirContains ".." "../.." was incorrectly True.

This does not seem to be an exploitable security hole, at least
as dirContains is used in git-annex.

Sponsored-by: Jochen Bartl on Patreon
2021-10-01 13:15:52 -04:00
Joey Hess
596f0774fc
Merge branch 'master' of ssh://git-annex.branchable.com 2021-10-01 12:35:29 -04:00
Joey Hess
b9a1cc512d
avoid uncessary call to inAnnex
sync --content: Avoid a redundant checksum of a file that was
incrementally verified, when used on NTFS and perhaps other filesystems.

When sync has just gotten the content, it does not need to check inAnnex a
second time. On NTFS, for some reason the write of the inode cache after
it gets the content is not immediately able to be read, and with an
empty/non-matching inode cache due to that stale data, inAnnex falls back
to hashing the whole object to determine if it's present.

Sponsored-by: Brock Spratlen on Patreon
2021-10-01 12:02:35 -04:00
Joey Hess
17a31f8e1b
analysis 2021-10-01 11:49:12 -04:00
spwhitton
6fbca0bb5b add sign off 2021-09-30 21:19:39 +00:00
spwhitton
c6e1a6a3a1 post bug 2021-09-30 21:15:04 +00:00
Joey Hess
42c6bc6c3e
Merge branch 'master' of ssh://git-annex.branchable.com 2021-09-30 15:20:59 -04:00
Joey Hess
620685c73c
started analysis 2021-09-30 15:20:44 -04:00