Re: That pesky windows run-tests failure on the buildbot
On Dec 14, 2017, at 5:04 PM, Kevin Bullockwrote: >> On Dec 14, 2017, at 11:14, Matt Harbison wrote: >> >> On Dec 13, 2017, at 7:02 PM, Matt Harbison wrote: >>> >>> I wonder if an upper case path is leaking through buildbot somehow. I >>> lowercased the driver letter 'basedir' in buildbot.tac, and we'll see what >>> that does. >> >> Looks like this was the case. No test-run-tests.t output in run 343. >> >> Can we get the timeout raised, so test-command-template.t passes? > > Is that in the master config? I can take a look at this. Looking at this is ProcessExplorer, the args used don’t match what is on the web page. The process was invoked as “python run-tests.py -j 1 -t 180 —blacklist=/dev/null —local”. > pacem in terris / мир / शान्ति / سَلاَم / 平和 > Kevin R. Bullock > ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
Re: That pesky windows run-tests failure on the buildbot
On Dec 14, 2017, at 5:04 PM, Kevin Bullockwrote: >> On Dec 14, 2017, at 11:14, Matt Harbison wrote: >> >> On Dec 13, 2017, at 7:02 PM, Matt Harbison wrote: >>> >>> I wonder if an upper case path is leaking through buildbot somehow. I >>> lowercased the driver letter 'basedir' in buildbot.tac, and we'll see what >>> that does. >> >> Looks like this was the case. No test-run-tests.t output in run 343. >> >> Can we get the timeout raised, so test-command-template.t passes? > > Is that in the master config? I can take a look at this. I assumed so, but the build properties say the source is the slave. That said, I don’t see it, the jobs=2, or the blacklist setting locally. > pacem in terris / мир / शान्ति / سَلاَم / 平和 > Kevin R. Bullock > ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
Re: That pesky windows run-tests failure on the buildbot
> On Dec 14, 2017, at 11:14, Matt Harbisonwrote: > > >> On Dec 13, 2017, at 7:02 PM, Matt Harbison wrote: > >> I wonder if an upper case path is leaking through buildbot somehow. I >> lowercased the driver letter 'basedir' in buildbot.tac, and we'll see what >> that does. > > Looks like this was the case. No test-run-tests.t output in run 343. > > Can we get the timeout raised, so test-command-template.t passes? Is that in the master config? I can take a look at this. pacem in terris / мир / शान्ति / سَلاَم / 平和 Kevin R. Bullock ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
Re: That pesky windows run-tests failure on the buildbot
> On Dec 13, 2017, at 7:02 PM, Matt Harbisonwrote: > I wonder if an upper case path is leaking through buildbot somehow. I > lowercased the driver letter 'basedir' in buildbot.tac, and we'll see what > that does. Looks like this was the case. No test-run-tests.t output in run 343. Can we get the timeout raised, so test-command-template.t passes? ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
Re: That pesky windows run-tests failure on the buildbot
On Wed, Dec 13, 2017 at 9:31 AM, Augie Facklerwrote: > > > On Dec 13, 2017, at 08:14, Feld Boris wrote: > > > > On Wed, 2017-12-13 at 21:29 +0900, Yuya Nishihara wrote: > >> On Tue, 12 Dec 2017 18:13:24 -0500, Matt Harbison wrote: > On Dec 12, 2017, at 5:57 PM, Augie Fackler > wrote: > Finally, some useful output: > > + --- $TESTTMP/anothertests/test-runtestdir.t > + +++ $TESTTMP/anothertests/test-runtestdir.t.err > + @@ -10,6 +10,7 @@ > + If this prints a path, that means RUNTESTDIR didn't equal > + TESTDIR as it should have. > + $ test "$RUNTESTDIR" = "G:\Users\test\projects\hg-default- > x86_64\Win7_x86_64_hg_tests\build\tests" || echo "$RUNTESTDIR" > + + g:\Users\test\projects\hg-default- > x86_64\Win7_x86_64_hg_tests\build\tests > > Basically, it's failing because one of os.path.{abspath,dirname} > is deciding to lowercase the drive letter. I suspect it's > abspath, but I don't have a Windows machine handy to test > against. Anyone got a clever idea on how to fix this? > >>> > >>> The odd thing is, this runs fine on this machine from this > >>> directory when not under buildbot. Nothing in the environment > >>> looked out or place, so idk why that happens. > >> > >> Maybe it depends on the current drive, g: vs G:. > > > > I have quickly tested locally on a Windows 10 enterprise, it seems that > > you can go either on the c: drive or the C: drive and it respect the > > case of the drive you typed. > > > > Here is some lines from my tests: > > > > C:\Users\Octobus\mercurial\test>hg log > > ('PATH', 'C:\\Users\\Octobus\\mercurial\\test', > > 'C:\\Users\\Octobus\\mercurial') > > > > C:\Users\Octobus\mercurial\test>cd c:\ > > > > c:\>cd Users\Octobus\mercurial\test > > > > c:\Users\Octobus\mercurial\test>hg log > > ('PATH', 'c:\\Users\\Octobus\\mercurial\\test', > > 'c:\\Users\\Octobus\\mercurial') > > > > Where the printed line comes from: > > > > print("PATH", os.getcwd(), os.path.dirname(os.getcwd())) > > > > Hope it helps > > Fascinating. Matt, could you grep for "g:" in the buildbot's configuration > on your end? I wonder if something got configured with a lowercase G > instead of uppercase. > > Another workaround would be that if we have a case-insensitive filesystem, > we could have the test only verify that lower(RUNTESTDIR) is what we > expect. Gross, but it'd avoid this kind of problem... > > > > >> ___ > >> Mercurial-devel mailing list > >> Mercurial-devel@mercurial-scm.org > >> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel > > The only hits were in the twistd log, and correspond to the environment variables in the stdio link for run-tests.py (like '_', PATH, etc). I checked PATH on the Windows side, and G: is uppercased everywhere %SYSTEMROOT% isn't used. It seems like a difference between cmd.exe and MSYS: G:\Users\test>cd projects\hg-default-x86_64 G:\Users\test\projects\hg-default-x86_64>python -c "import os; print os.path.abspath('.')" G:\Users\test\projects\hg-default-x86_64 $ cd "G:\Users\test\projects\hg-default-x86_64" $ python -c "import os; print os.path.abspath('.')" g:\Users\test\projects\hg-default-x86_64 $ df -h FilesystemSize Used Avail Use% Mounted on G:\Users\test\AppData\Local\Temp 62G 48G 14G 79% /tmp C:\MinGW\msys\1.0 30G 27G 2.8G 91% /usr C:\MinGW\msys\1.0 30G 27G 2.8G 91% / C:\MinGW 30G 27G 2.8G 91% /mingw c: 30G 27G 2.8G 91% /c d: 15G 8.1G 6.6G 56% /d e: 15G 7.9G 6.9G 54% /e f: 30G 16G 15G 52% /f g: 62G 48G 14G 79% /g df: `/i': no medium No how to change that, or if it is even possible. But I just re-ran test-run-test.t, and it works in this same directory. I wonder if an upper case path is leaking through buildbot somehow. I lowercased the driver letter 'basedir' in buildbot.tac, and we'll see what that does. ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
Re: That pesky windows run-tests failure on the buildbot
> On Dec 13, 2017, at 08:14, Feld Boriswrote: > > On Wed, 2017-12-13 at 21:29 +0900, Yuya Nishihara wrote: >> On Tue, 12 Dec 2017 18:13:24 -0500, Matt Harbison wrote: On Dec 12, 2017, at 5:57 PM, Augie Fackler wrote: Finally, some useful output: + --- $TESTTMP/anothertests/test-runtestdir.t + +++ $TESTTMP/anothertests/test-runtestdir.t.err + @@ -10,6 +10,7 @@ + If this prints a path, that means RUNTESTDIR didn't equal + TESTDIR as it should have. + $ test "$RUNTESTDIR" = "G:\Users\test\projects\hg-default- x86_64\Win7_x86_64_hg_tests\build\tests" || echo "$RUNTESTDIR" + + g:\Users\test\projects\hg-default- x86_64\Win7_x86_64_hg_tests\build\tests Basically, it's failing because one of os.path.{abspath,dirname} is deciding to lowercase the drive letter. I suspect it's abspath, but I don't have a Windows machine handy to test against. Anyone got a clever idea on how to fix this? >>> >>> The odd thing is, this runs fine on this machine from this >>> directory when not under buildbot. Nothing in the environment >>> looked out or place, so idk why that happens. >> >> Maybe it depends on the current drive, g: vs G:. > > I have quickly tested locally on a Windows 10 enterprise, it seems that > you can go either on the c: drive or the C: drive and it respect the > case of the drive you typed. > > Here is some lines from my tests: > > C:\Users\Octobus\mercurial\test>hg log > ('PATH', 'C:\\Users\\Octobus\\mercurial\\test', > 'C:\\Users\\Octobus\\mercurial') > > C:\Users\Octobus\mercurial\test>cd c:\ > > c:\>cd Users\Octobus\mercurial\test > > c:\Users\Octobus\mercurial\test>hg log > ('PATH', 'c:\\Users\\Octobus\\mercurial\\test', > 'c:\\Users\\Octobus\\mercurial') > > Where the printed line comes from: > > print("PATH", os.getcwd(), os.path.dirname(os.getcwd())) > > Hope it helps Fascinating. Matt, could you grep for "g:" in the buildbot's configuration on your end? I wonder if something got configured with a lowercase G instead of uppercase. Another workaround would be that if we have a case-insensitive filesystem, we could have the test only verify that lower(RUNTESTDIR) is what we expect. Gross, but it'd avoid this kind of problem... > >> ___ >> Mercurial-devel mailing list >> Mercurial-devel@mercurial-scm.org >> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
Re: That pesky windows run-tests failure on the buildbot
On Wed, 2017-12-13 at 21:29 +0900, Yuya Nishihara wrote: > On Tue, 12 Dec 2017 18:13:24 -0500, Matt Harbison wrote: > > > On Dec 12, 2017, at 5:57 PM, Augie Fackler> > > wrote: > > > Finally, some useful output: > > > > > > + --- $TESTTMP/anothertests/test-runtestdir.t > > > + +++ $TESTTMP/anothertests/test-runtestdir.t.err > > > + @@ -10,6 +10,7 @@ > > > + If this prints a path, that means RUNTESTDIR didn't equal > > > + TESTDIR as it should have. > > > + $ test "$RUNTESTDIR" = "G:\Users\test\projects\hg-default- > > > x86_64\Win7_x86_64_hg_tests\build\tests" || echo "$RUNTESTDIR" > > > + + g:\Users\test\projects\hg-default- > > > x86_64\Win7_x86_64_hg_tests\build\tests > > > > > > Basically, it's failing because one of os.path.{abspath,dirname} > > > is deciding to lowercase the drive letter. I suspect it's > > > abspath, but I don't have a Windows machine handy to test > > > against. Anyone got a clever idea on how to fix this? > > > > The odd thing is, this runs fine on this machine from this > > directory when not under buildbot. Nothing in the environment > > looked out or place, so idk why that happens. > > Maybe it depends on the current drive, g: vs G:. I have quickly tested locally on a Windows 10 enterprise, it seems that you can go either on the c: drive or the C: drive and it respect the case of the drive you typed. Here is some lines from my tests: C:\Users\Octobus\mercurial\test>hg log ('PATH', 'C:\\Users\\Octobus\\mercurial\\test', 'C:\\Users\\Octobus\\mercurial') C:\Users\Octobus\mercurial\test>cd c:\ c:\>cd Users\Octobus\mercurial\test c:\Users\Octobus\mercurial\test>hg log ('PATH', 'c:\\Users\\Octobus\\mercurial\\test', 'c:\\Users\\Octobus\\mercurial') Where the printed line comes from: print("PATH", os.getcwd(), os.path.dirname(os.getcwd())) Hope it helps > ___ > Mercurial-devel mailing list > Mercurial-devel@mercurial-scm.org > https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
Re: That pesky windows run-tests failure on the buildbot
On Tue, 12 Dec 2017 18:13:24 -0500, Matt Harbison wrote: > > On Dec 12, 2017, at 5:57 PM, Augie Facklerwrote: > > Finally, some useful output: > > > > + --- $TESTTMP/anothertests/test-runtestdir.t > > + +++ $TESTTMP/anothertests/test-runtestdir.t.err > > + @@ -10,6 +10,7 @@ > > + If this prints a path, that means RUNTESTDIR didn't equal > > + TESTDIR as it should have. > > + $ test "$RUNTESTDIR" = > > "G:\Users\test\projects\hg-default-x86_64\Win7_x86_64_hg_tests\build\tests" > > || echo "$RUNTESTDIR" > > + + > > g:\Users\test\projects\hg-default-x86_64\Win7_x86_64_hg_tests\build\tests > > > > Basically, it's failing because one of os.path.{abspath,dirname} is > > deciding to lowercase the drive letter. I suspect it's abspath, but I don't > > have a Windows machine handy to test against. Anyone got a clever idea on > > how to fix this? > > The odd thing is, this runs fine on this machine from this directory when not > under buildbot. Nothing in the environment looked out or place, so idk why > that happens. Maybe it depends on the current drive, g: vs G:. ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
Re: That pesky windows run-tests failure on the buildbot
> On Dec 12, 2017, at 5:57 PM, Augie Facklerwrote: > > Finally, some useful output: > > + --- $TESTTMP/anothertests/test-runtestdir.t > + +++ $TESTTMP/anothertests/test-runtestdir.t.err > + @@ -10,6 +10,7 @@ > + If this prints a path, that means RUNTESTDIR didn't equal > + TESTDIR as it should have. > + $ test "$RUNTESTDIR" = > "G:\Users\test\projects\hg-default-x86_64\Win7_x86_64_hg_tests\build\tests" > || echo "$RUNTESTDIR" > + + > g:\Users\test\projects\hg-default-x86_64\Win7_x86_64_hg_tests\build\tests > > Basically, it's failing because one of os.path.{abspath,dirname} is deciding > to lowercase the drive letter. I suspect it's abspath, but I don't have a > Windows machine handy to test against. Anyone got a clever idea on how to fix > this? The odd thing is, this runs fine on this machine from this directory when not under buildbot. Nothing in the environment looked out or place, so idk why that happens. ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
That pesky windows run-tests failure on the buildbot
Finally, some useful output: + --- $TESTTMP/anothertests/test-runtestdir.t + +++ $TESTTMP/anothertests/test-runtestdir.t.err + @@ -10,6 +10,7 @@ + If this prints a path, that means RUNTESTDIR didn't equal + TESTDIR as it should have. + $ test "$RUNTESTDIR" = "G:\Users\test\projects\hg-default-x86_64\Win7_x86_64_hg_tests\build\tests" || echo "$RUNTESTDIR" + + g:\Users\test\projects\hg-default-x86_64\Win7_x86_64_hg_tests\build\tests Basically, it's failing because one of os.path.{abspath,dirname} is deciding to lowercase the drive letter. I suspect it's abspath, but I don't have a Windows machine handy to test against. Anyone got a clever idea on how to fix this? ___ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel