update comment

This commit is contained in:
Joey Hess 2022-03-01 15:57:13 -04:00
parent 316a049e96
commit ecf7c29107
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38

View file

@ -4,36 +4,20 @@
date="2022-03-01T18:06:32Z" date="2022-03-01T18:06:32Z"
content=""" content="""
Since you mentioned standalone builds, I suspect you are running Since you mentioned standalone builds, I suspect you are running
something like: "git-annex.linux/git-annex test" something like: "cd git-annex.linux; ./git-annex test"
I have verified that is much much slower than running git-annex not I have verified that is much much slower than running git-annex not
from the standalone build. from the standalone build. On the order of 1+ hours vs 5 minutes.
It seems that every time the test suite runs git, it does it via runshell, There is a simple workaround, run "git-annex.linux/git-annex"
and repeated calls to runshell take time since it has to re-set up the from somewhere outside the standalone build. That will make it much faster.
standalone environment. This does not happen when the test suite runs Here it takes about 5 minutes.
git-annex; I've verified that its use of programPath results in
git-annex.linux/bin/git-annex being run, which avoids the runshell
overhead.
It looks like the problem is that PATH ends up With that said, there's still a lot of room to speed up git-annex
containing "git-annex.linux:git-annex.linux/bin", and so it runs test, and the main thing would probably be to parallelize its tests.
the runshell wrapped git. That happens due to setTestMode, which Which can be done, but needs tasty-1.2. That finally made it into debian
appends the current directory to the PATH. stable, so it should be able to depend on it now. I would not be surprised
if it can be sped up 10x that way, because tests often have to wait one or
Now, I doubt there would be a real benefit to testing using the standalone more seconds after writing a file due to time stamp issues etc.
build, running ./git-annex in the tree where you built it, unless the I have created a `paralleltest` branch with a start on that, not yet working.
standalone build is made on a system other than the system where the test
is run.
But still this repeated runshell is excessive. And should be able to be
fixed easily now that I've understood it.
However: The main thing I know that will speed up git-annex test generally
is to parallelize its tests. Which can be done, but needs tasty-1.2. That
finally made it into debian stable, so it should be able to depend on it
now. I would not be surprised if it can be sped up 10x that way, because tests
often have to wait one or more seconds after writing a file due to time
stamp issues etc. I have created a `paralleltest` branch with a start on
that, not yet working.
"""]] """]]