Re: Bogus reports from coverage.postgresql.org - Mailing list pgsql-www

From Tom Lane
Subject Re: Bogus reports from coverage.postgresql.org
Date
Msg-id 6769.1520980207@sss.pgh.pa.us
Whole thread Raw
In response to Re: Bogus reports from coverage.postgresql.org  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-www
I wrote:
> So this is basically Fedora breakage ...
> but it means I don't have an easy way to check 1.13 except
> by installing handmade packages, which would probably
> not be definitive proof one way or the other.

I overcame my trepidation after noting that the F26 and F28 lcov.spec
files were nigh identical, and built lcov 1.13 on F26.  And it's fine
too:

$ grep bogus coverage/src/backend/optimizer/util/predtest.c.*
coverage/src/backend/optimizer/util/predtest.c.gcov.html:<span class="lineNum">     492 </span><span class="lineNoCov">
        0 :     elog(ERROR, "predicate_classify returned a bogus value");</span> 
coverage/src/backend/optimizer/util/predtest.c.gcov.html:<span class="lineNum">     803 </span><span class="lineNoCov">
        0 :     elog(ERROR, "predicate_classify returned a bogus value");</span> 

(span class="lineNoCov" is what we want to see here).  The underlying
compiler is gcc 7.3.1 in this case.

So it seems we've reduced the possibilities to these: either there's
something weird about Debian's packaging of lcov, or there's a bug in some
underlying perl module on Debian, or there's some incompatibility between
gcc 6.3.0 and lcov 1.13.  The last seems the most likely.  The gcov text
output looks about the same on 7.3.1:

$ grep bogus src/backend/optimizer/util/predtest.c.gcov
    #####:  492:        elog(ERROR, "predicate_classify returned a bogus value");
    #####:  803:        elog(ERROR, "predicate_classify returned a bogus value");

but now that we know that lcov looks directly at the .gcno files,
and possibly also .gcda (I've not examined the source code), I doubt
that we should trust that "the gcov text output looks the same" means
anything compatibility-wise.

            regards, tom lane


pgsql-www by date:

Previous
From: Tom Lane
Date:
Subject: Re: Bogus reports from coverage.postgresql.org
Next
From: Oleg Bartunov
Date:
Subject: Main page of wiki.postgresql.org