Subject: | Test::Smoke fails to identify failing tests in web report; does not smoke the branch requested |
I'm trying to understand why a particular smoke-test report I generated is defective in several respects. The report in question is:
http://perl5.test-smoke.org/report/68028
You'll note the following:
* The report is for branch 'blead'.
* The report was graded 'F' on 3 of the 8 configurations.
* No specific test failures are reported.
When I go to the machine where the smoke-test was run, I see that it was the most recent run on that machine:
#####
$ cd logs/smokecurrent
$ ls -ltr . | tail -4
-rw-rw-rw- 1 jkeenan jkeenan 1453 Jul 24 23:22 rpt065c341a5cb198ae9b03f6aa4a3c778976f87a6b.rpt
-rw-rw-rw- 1 jkeenan jkeenan 2372 Jul 24 23:22 out065c341a5cb198ae9b03f6aa4a3c778976f87a6b.out
-rw-rw-rw- 1 jkeenan jkeenan 578044 Jul 24 23:22 log065c341a5cb198ae9b03f6aa4a3c778976f87a6b.log
-rw-rw-rw- 1 jkeenan jkeenan 6472 Jul 24 23:22 jsn065c341a5cb198ae9b03f6aa4a3c778976f87a6b.jsn
#####
Problem 1
When I look at the 'rpt' file (attached), I see that, unlike report 68028, it does describe failures in specific tests:
#####
Testsuite was run only with 'harness'
Tests skipped on user request:
# One test name on a line
Failures: (common-args) none
[stdio] -Duseithreads
[stdio/perlio] -DDEBUGGING -Duseithreads
../dist/Time-HiRes/t/itimer.t...............................??????
#####
../dist/Time-HiRes/t/itimer.t is also reported as '??????' in the 'out' file as well (which I can provide upon request). Why did this failure not make it to the test-smoke.org web page?
Problem 2
For this smoke-test run I did not request 'blead' as the branch to be smoked. Rather, I requested 'smoke-me/jkeenan/133382-Test-Simple-trial'.
#####
$ head smokecurrent.gitbranch
smoke-me/jkeenan/133382-Test-Simple-trial
blead
smoke-me/jkeenan/davem/133377-time-hires
blead
#####
If I call 'git status' in the two directories that are repositories, I get two different results:
#####
$ cd git-perl && git status
On branch smoke-me/jkeenan/133382-Test-Simple-trial
Your branch is up-to-date with 'origin/smoke-me/jkeenan/133382-Test-Simple-trial'.
nothing to commit, working directory clean
#####
$ cd ../perl-current/ && git status
On branch blead
Your branch is ahead of 'origin/blead' by 39 commits.
(use "git push" to publish your local commits)
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: patchlevel.h
#####
The 'log' file suggests that the process started correctly:
#####
[2018-07-24 22:10:27-0400] Read configuration from: /home/jkeenan/p5smoke/configs/smokecurrent_config
[2018-07-24 22:10:27-0400] Commitlevel before sync: 12ee59136861869f53584541a9c5da02dc42df59
[2018-07-24 22:10:27-0400] ==> Starting synctree
[2018-07-24 22:10:27-0400] Reading branch to smoke from: '/home/jkeenan/p5smoke/smokecurrent.gitbranch'
[2018-07-24 22:10:27-0400] In pwd(/home/jkeenan/p5smoke/git-perl) running:
[2018-07-24 22:10:27-0400] qx[/usr/bin/git remote update --prune 2>&1]
[2018-07-24 22:10:30-0400] gitorigin(update --prune): Fetching origin
[2018-07-24 22:10:30-0400] From git://perl5.git.perl.org/perl
[2018-07-24 22:10:30-0400] 12ee591..1b80876 blead -> origin/blead
[2018-07-24 22:10:30-0400] + 5874577...f223509 smoke-me/ilmari/arybasectomy -> origin/smoke-me/ilmari/arybasectomy (forced update)
[2018-07-24 22:10:30-0400] + 807fc53...065c341 smoke-me/jkeenan/133382-Test-Simple-trial -> origin/smoke-me/jkeenan/133382-Test-Simple-trial (forced update)
[2018-07-24 22:10:30-0400] * [new branch] smoke-me/khw-sisyphus -> origin/smoke-me/khw-sisyphus
[2018-07-24 22:10:30-0400] * [new tag] v5.29.1 -> v5.29.1
[2018-07-24 22:10:30-0400] In pwd(/home/jkeenan/p5smoke/git-perl) running:
[2018-07-24 22:10:30-0400] qx[/usr/bin/git checkout smoke-me/jkeenan/133382-Test-Simple-trial
[2018-07-24 22:10:30-0400] 2>&1]
Switched to a new branch 'smoke-me/jkeenan/133382-Test-Simple-trial'
[2018-07-24 22:10:30-0400] Branch smoke-me/jkeenan/133382-Test-Simple-trial set up to track remote branch smoke-me/jkeenan/133382-Test-Simple-trial from origin.
[2018-07-24 22:10:30-0400] In pwd(/home/jkeenan/p5smoke/git-perl) running:
[2018-07-24 22:10:30-0400] qx[/usr/bin/git reset --hard origin/smoke-me/jkeenan/133382-Test-Simple-trial
[2018-07-24 22:10:30-0400] 2>&1]
[2018-07-24 22:10:30-0400] gitorigin(checkout): HEAD is now at 065c341 Sync with CPAN Test-Simple-1.302139-TRIAL.
[2018-07-24 22:10:30-0400] In pwd(/home/jkeenan/p5smoke/perl-current) running:
[2018-07-24 22:10:30-0400] qx[/usr/bin/git clean -dfx 2>&1]
[2018-07-24 22:10:30-0400] Removing .config/
...
#####
Although I notice:
#####
[2018-07-24 22:10:30-0400] Removing veryclean.sh
[2018-07-24 22:10:30-0400] In pwd(/home/jkeenan/p5smoke/perl-current) running:
[2018-07-24 22:10:30-0400] qx[/usr/bin/git fetch origin 2>&1]
[2018-07-24 22:10:31-0400] From /home/jkeenan/p5smoke/git-perl
[2018-07-24 22:10:31-0400] * [new branch] smoke-me/jkeenan/133382-Test-Simple-trial -> origin/smoke-me/jkeenan/133382-Test-Simple-trial
[2018-07-24 22:10:31-0400] * [new tag] v5.29.1 -> v5.29.1
[2018-07-24 22:10:31-0400] In pwd(/home/jkeenan/p5smoke/perl-current) running:
[2018-07-24 22:10:31-0400] qx[/usr/bin/git checkout smoke-me/jkeenan/133382-Test-Simple-trial
[2018-07-24 22:10:31-0400] 2>&1]
error: Your local changes to the following files would be overwritten by checkout:
patchlevel.h
Please, commit your changes or stash them before you can switch branches.
Aborting
[2018-07-24 22:10:32-0400] In pwd(/home/jkeenan/p5smoke/perl-current) running:
[2018-07-24 22:10:32-0400] qx[/usr/bin/git reset --hard origin/smoke-me/jkeenan/133382-Test-Simple-trial
[2018-07-24 22:10:32-0400] 2>&1]
[2018-07-24 22:10:32-0400] HEAD is now at 065c341 Sync with CPAN Test-Simple-1.302139-TRIAL.
[2018-07-24 22:10:32-0400] In pwd(/home/jkeenan/p5smoke/perl-current) running:
[2018-07-24 22:10:32-0400] qx[/usr/bin/git reset --hard origin/smoke-me/jkeenan/133382-Test-Simple-trial
[2018-07-24 22:10:32-0400] 2>&1]
[2018-07-24 22:10:32-0400] HEAD is now at 065c341 Sync with CPAN Test-Simple-1.302139-TRIAL.
[2018-07-24 22:10:32-0400] In pwd(/home/jkeenan/p5smoke/perl-current) running:
[2018-07-24 22:10:32-0400] qx[/usr/bin/perl Porting/make_dot_patch.pl > .patch]
[2018-07-24 22:10:32-0400] /home/jkeenan/p5smoke/perl-current is now up to patchlevel 065c341a5cb198ae9b03f6aa4a3c778976f87a6b
[2018-07-24 22:10:32-0400] Commitlevel after sync: 065c341a5cb198ae9b03f6aa4a3c778976f87a6b
[2018-07-24 22:10:32-0400] ==> Starting runsmoke
[2018-07-24 22:10:32-0400] [./tssmokeperl.pl] chdir(/home/jkeenan/p5smoke/perl-current)
[2018-07-24 22:10:32-0400] Setup alarm: Wed Jul 25 04:10:32 2018
[2018-07-24 22:10:32-0400] [filetest] /home/jkeenan/p5smoke/perl-current/ext/Test-Harness/lib/Test/Harness.pm: N
[2018-07-24 22:10:32-0400] [filetest] /home/jkeenan/p5smoke/perl-current/cpan/Test-Harness/lib/Test/Harness.pm: Y
[2018-07-24 22:10:32-0400] [filetest] /home/jkeenan/p5smoke/perl-current/lib/Test/Harness.pm: N
[2018-07-24 22:10:32-0400] Test::Harness candidate '/home/jkeenan/p5smoke/perl-current/cpan/Test-Harness/lib/Test/Harness.pm'
[2018-07-24 22:10:32-0400] In pwd(/home/jkeenan/p5smoke/perl-current) running:
[2018-07-24 22:10:32-0400] qx[/usr/bin/perl -e "require q[/home/jkeenan/p5smoke/perl-current/cpan/Test-Harness/lib/Test/Harness.pm];print Test::Harness->VERSION" 2>&1]
[2018-07-24 22:10:32-0400] Found: Test::Harness version 3.42.
[2018-07-24 22:10:32-0400] Reading build configurations from /home/jkeenan/p5smoke/perlcurrent.cfg
[2018-07-24 22:10:32-0400] Found 4 raw-sections
[2018-07-24 22:10:32-0400] Left with 2 parsed sections
[2018-07-24 22:10:32-0400] Found 4 (unfiltered) configurations
[2018-07-24 22:10:32-0400] Reading 'Policy.sh' from default content (v=2)
[2018-07-24 22:10:32-0400] Running test suite only with 'harness'
[2018-07-24 22:10:32-0400] [get_patch] found: '065c341a5cb198ae9b03f6aa4a3c778976f87a6b', 'v5.29.1-31-g065c341', 'blead'
[2018-07-24 22:10:32-0400] make distclean ...
[2018-07-24 22:10:32-0400] [make -i distclean 2>/dev/null]
[2018-07-24 22:10:32-0400] Smoking patch 065c341a5cb198ae9b03f6aa4a3c778976f87a6b v5.29.1-31-g065c341
[2018-07-24 22:10:32-0400] Smoking branch blead
[2018-07-24 22:10:32-0400] Found 6198 entries in MANIFEST
...
#####
So it seems that the perl-current repository did *not* get reset to the branch requested.
Smoking proceeds, in the course of which in certain runs I get the failures cited in the report:
#####
...
[2018-07-24 22:57:35-0400] [make_test_harness] Test::Harness >= 3
# parser guessed wrong encoding expected 'CP1252' got 'UTF-8'
Subroutine Math::BigInt::carp redefined at t/option_l.t line 16.
# Will use Digest::MD5
make: *** [test_harness] Error 26
error while running harness target 'test_harness': 2 at /home/jkeenan/p5smoke/lib/Test/Smoke/App
/RunSmoke.pm line 118.
[2018-07-24 23:05:08-0400] [unknown failure] ../dist/Time-HiRes/t/itimer.t......................
.........
[2018-07-24 23:05:08-0400]
[2018-07-24 23:05:08-0400] ../dist/Time-HiRes/t/itimer.t...............................??????
...
#####
And the branch ultimately reported as having been smoked is 'blead':
#####
...
[2018-07-24 23:22:22-0400] "smoke_branch" : "blead",
[2018-07-24 23:22:22-0400] "git_describe" : "v5.29.1-31-g065c341",
[2018-07-24 23:22:22-0400] "smoke_revision" : "1.72",
...
#####
Now, if Problem 2 sounds familiar, perhaps that's because I've run into it before. See
https://rt.cpan.org/Ticket/Display.html?id=120008
and
https://github.com/abeltje/Test-Smoke/pull/26
Note that I am running:
#####
Report by Test::Smoke v1.72 running on perl 5.20.2
(Reporter v0.053 / Smoker v0.046)
#####
Do you have any idea as to the cause of these anomalies?
Thank you very much.
Jim Keenan
Subject: | rpt065c341a5cb198ae9b03f6aa4a3c778976f87a6b.rpt |
Message body not shown because it is not plain text.