Commit graph

43999 commits

Author SHA1 Message Date
NewUser
289266618a Added a comment: Thanks Yann! 2023-11-19 18:20:03 +00:00
nobodyinperson
37e5866cd1 Added a comment 2023-11-19 16:27:35 +00:00
nobodyinperson
f4bde53022 Make it more clear that git annex webapp will add files and sync via the assistant. 2023-11-19 16:26:44 +00:00
nobodyinperson
3cd54476b5 Added a comment 2023-11-19 16:16:15 +00:00
NewUser
d5664ac5e2 Added a comment: launching git annex webapp starts adding to the annex which is surprising 2023-11-18 20:08:18 +00:00
NewUser
c727550f68 Added a comment: launching git annex webapp starts adding to the annex which is surprising 2023-11-18 20:03:06 +00:00
yarikoptic
dbf1f5d6d6 Added a comment 2023-11-18 01:35:35 +00:00
Joey Hess
6e3bcbf4dd
Make git-annex copy --from --to --fast actually fast
Eg when the destination is logged as containing a file, skip
actively checking that it does contain it.

Note that --fast does not prevent other verifications of content
location that are done in a copy --from --to. Perhaps it could, but this
change will already avoid the real unnecessary work of operating on
files that are already in the remote.

And avoiding other verifications
might cause it to fail if the location log thinks that --to does not
contain the content but does. Such complications with `git-annex copy
--to remote --fast` led to commit d006586cd0
which added a note that gets displayed when that fails, mentioning it
might be due to --fast being enabled.

copy --from --to is already complicated enough without needing to worry
about such edge cases, so continuing to doing some verification of
content location after the initial --fast filtering seems ok.

Sponsored-by: Dartmouth College's DANDI project
2023-11-17 17:37:58 -04:00
Joey Hess
96c0e720c5
small refactoring
Sponsored-by: Dartmouth College's DANDI project
2023-11-17 17:23:24 -04:00
Joey Hess
9f6609d2b1
fixed 2023-11-17 16:46:43 -04:00
Joey Hess
7a8393ce7d
Fix bug in git-annex copy --from --to
Caused it to skip files that were locally present.

Sponsored-by: Dartmouth College's DANDI project
2023-11-17 16:30:20 -04:00
Joey Hess
f2f6dbe46b
comment 2023-11-17 16:17:44 -04:00
nobodyinperson
c2620ac4ca 2023-11-17 11:47:53 +00:00
imlew
0120334a51 Added a comment: thank you 2023-11-17 11:43:39 +00:00
nobodyinperson
929db5c5cf Added a comment 2023-11-17 09:49:02 +00:00
imlew
55a7fce119 Added a comment 2023-11-17 09:41:19 +00:00
nobodyinperson
adfe5a4a4c Added a comment 2023-11-17 08:45:56 +00:00
imlew
144500f19d Added a comment: one more question 2023-11-17 08:23:32 +00:00
imlew
2dedf68e53 Added a comment: not about backends after all 2023-11-17 08:09:23 +00:00
yarikoptic
27e705ea72 remove content of now independent issue https://git-annex.branchable.com/bugs/copy_--from_--to_does_not_copy_if_present_locally/ 2023-11-17 02:23:17 +00:00
yarikoptic
0bde6e8cf4 initial dedicated issue on copy --from --to not copying if present locally 2023-11-17 02:07:35 +00:00
yarikoptic
7205876d23 initial report on --fast of being no effect for copy --from --to 2023-11-16 17:54:49 +00:00
nobodyinperson
0018e5769e Added a comment 2023-11-16 16:34:13 +00:00
nobodyinperson
0a43bcb71b Added a comment 2023-11-16 15:55:49 +00:00
nobodyinperson
9b78834f88 Added a comment 2023-11-16 15:54:08 +00:00
imlew
5454ebe53b Added a comment: I guess this question is about backends 2023-11-16 12:51:59 +00:00
Ilya_Shlyakhter
a15446b458 added bug report for git init on a worktree checked out for a submodule. 2023-11-15 18:45:52 +00:00
imlew
15dc5fae10 2023-11-15 16:36:13 +00:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
aeb4976d07 Added a comment 2023-11-14 22:43:22 +00:00
jcjgraf
d22e8c465e Added a comment 2023-11-14 21:25:24 +00:00
Joey Hess
bca22426d8
Merge branch 'master' of ssh://git-annex.branchable.com 2023-11-14 15:02:06 -04:00
Joey Hess
7d67229884
git-annex log --gnuplot
The gnuplot output is pretty good, but could still be improved with:

* more colors (repeating colors is confusing with a lot of repos)
* better positioning of the legend, making the plot wider and moving it
  from over top of the graph

Sponsored-by: Kevin Mueller on Patreon
2023-11-14 14:56:58 -04:00
Joey Hess
0fdc1a54db
git-annex log --received modifier option
Only counting received and not dropped makes this show the bandwidth of
data coming into the repository, although only in a sense. Since
git-annex branch updates only happen at the end of a command, and we
don't know when a command started, it's only an approximation of the
actual bandwidth. (A previous git-annex branch update made have
happened in a different repository.)

It would be possible to also add a --dropped option, but I don't know
how useful that would be?

Sponsored-by: Nicholas Golder-Manning on Patreon
2023-11-14 14:04:46 -04:00
Joey Hess
21e66ce209
rename --when to --interval
More accurately describes its behavior.
2023-11-14 11:45:16 -04:00
grond66@79ca29ba964cd0d8e2f352871d54452e4a9dad88
a79d819b5b 2023-11-14 04:32:15 +00:00
Joey Hess
1ddec09f7c
close 2023-11-13 17:45:37 -04:00
Joey Hess
cde081a025
guard against wrong timestamps in git log
For example, my sound repo has in the git-annex branch a commit from
2036, which is followed by one from 2034, in amoung commits from 2013.
Clearly there was a problem with the clock.

Since git log --date-order has a behavior of
"Show no parents before all of its children are shown", the data still
gets processed ok. The future timestamp just prevented displaying data
after that commit. It seems better, when the clock was wrong, to display
a wrong date, and then return to right dates.

It would be nice to filter out the wrong dates from display entirely,
but that seems it would need to buffer the whole output. This command is
too slow to buffer it all before displaying anything, and anyway this
kind of problem is probably rare.

Sponsored-by: Joshua Antonishen on Patreon
2023-11-13 15:06:04 -04:00
Joey Hess
2ab11fe06e
treat dead repos as 0 size
With this, git annex log --totalsizes can be compared with
git-annex info's "combined annex size of all repositories"
to double-check it works correctly.

In my sound repo, the two match.

In my big repo, the two report slightly different sizes,
with the former being 1.3 gb smaller than the latter.
I don't know the reason for this disreprency. Given the 30+tb size of
the repo, it's a small difference.

It seems possible that a bug in an old version of git-annex could
explain it. Eg, if an old git-annex lost a line when updating trust.log
or a location log in a merge, git-annex info would see only what it
replaced it with, while git-annex log will see the previous value as
well.

Sponsored-by: Leon Schuermann on Patreon
2023-11-13 15:05:48 -04:00
Joey Hess
38b9ebc5fd
newtype MapLog
Noticed that Semigroup instance of Map is not suitable to use
for MapLog. For example, it behaved like this:

ghci>  parseTrustLog "foo 1 timestamp=10\nfoo 2 timestamp=11" <> parseTrustLog "foo X timestamp=12"
fromList [(UUID "foo",LogEntry {changed = VectorClock 11s, value = SemiTrusted})]

Which was wrong, it lost the newer DeadTrusted value.

Luckily, nothing used that Semigroup when operating on a MapLog. And this
provides a safe instance.

Sponsored-by: Graham Spencer on Patreon
2023-11-13 14:37:22 -04:00
Joey Hess
5d8b8a8ad0
git-annex log --totalsizes
Note that dead repositories are not yet handled so their sizes show as
nonzero after they are marked dead.

Sponsored-By: unqueued on Patreon
2023-11-13 13:15:36 -04:00
Joey Hess
d826dde59a
update 2023-11-13 13:09:39 -04:00
Joey Hess
dc02236c85
git-annex log --sizes
CSV format so it can be fed into a program to graph it.

Note that dead repositories are not yet handled so their sizes show as
nonzero after they are marked dead.

Sponsored-By: k0ld on Patreon
2023-11-13 13:07:22 -04:00
Joey Hess
385ddc3225
Merge branch 'master' of ssh://git-annex.branchable.com 2023-11-11 14:43:13 -04:00
Lukey
7df85809c8 Added a comment 2023-11-11 16:13:28 +00:00
Joey Hess
6203b8afba
the last line is for the current time 2023-11-10 17:37:55 -04:00
Joey Hess
574514545c
git-annex log --sizesof
This can take a lot of memory. I decided to violate the usual rule in
git-annex that it operate in constant memory no matter how many annexed
objects. In this case, it would be hard to be fast without using a big
map of the location logs. The main difficulty here is that there can be
many git-annex branches and it needs to display a consistent view at a
point in time, which means merging information from multiple git-annex
branches.

I have not checked if there are any laziness leaks in this code. It
takes 1 gb to run in my big repo, which is around what I estimated
before writing it.

2 options that are documented are not yet implemented.

Small bug: With eg --when=1h, it will display at 12:00 then 1:10 if the
next change after 12:59 is then. Then it waits until after 2:10 to
display the next change. It ought to wait until after 2:00.

Sponsored-by: Brock Spratlen on Patreon
2023-11-10 17:26:10 -04:00
Joey Hess
561c036664
split out generic git log parser
Sponsored-By: Jack Hill on Patreon
2023-11-10 15:40:03 -04:00
Joey Hess
ae401fae14
Merge branch 'master' of ssh://git-annex.branchable.com 2023-11-08 14:14:41 -04:00
Joey Hess
6a8672d756
todo 2023-11-08 14:14:35 -04:00
Joey Hess
11cc9f1933
info: Added calculation of combined annex size of all repositories
Factored out overLocationLogs from CmdLine.Seek, which can calculate this
pretty fast even in a large repo. In my big repo, the time to run git-annex
info went up from 1.33s to 8.5s.

Note that the "backend usage" stats are for annexed files in the working
tree only, not all annexed files. This new data source would let that be
changed, but that would be a confusing behavior change. And I cannot
retitle it either, out of fear something uses the current title (eg parsing
the json).

Also note that, while time says "402108maxresident" in my big repo now,
up from "54092maxresident", top shows the RES constant at 64mb, and it
was 48mb before. So I don't think there is a memory leak. I tried using
deepseq to force full evaluation of addKeyCopies and memory use didn't
change, which also says no memory leak. And indeed, not even calling
addKeyCopies resulted in the same memory use. Probably the increased memory
usage is buffering the stream of data from git in overLocationLogs.

Sponsored-by: Brett Eisenberg on Patreon
2023-11-08 13:35:11 -04:00