How to run test coverage on Debian 13 ?

From: Pierre Forstmann <pierre(dot)forstmann(at)gmail(dot)com>
To: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: How to run test coverage on Debian 13 ?
Date: 2026-10-03 16:08:17
Message-ID: 27e7ac16-5f9c-454b-ad64-ed0411d41a71@gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello,

I'm trying to test run test coverage using master branch on Debian 13 with:

postgres(at)alma:~$ lcov --version
lcov: LCOV version 2.0-1
postgres(at)alma:~$ gcov --version
gcov (Debian 14.2.0-19) 14.2.0
JSON format version: 2
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

If I build  PG with make using:

./configure --prefix=$TARGET --enable-cassert --enable-debug
--with-uuid=e2fs --with-openssl --enable-tap-tests
--enable-injection-points --with-liburing --enable-coverage

I get:

postgres(at)alma:~/postgresql$ make check
make -C ./src/backend generated-headers
make[1] : on entre dans le répertoire «
/var/lib/postgresql/postgresql/src/backend »
make -C ../include/catalog generated-headers
make[2] : on entre dans le répertoire «
/var/lib/postgresql/postgresql/src/include/catalog »
make[2]: Rien à faire pour « generated-headers ».
make[2] : on quitte le répertoire «
/var/lib/postgresql/postgresql/src/include/catalog »
make -C nodes generated-header-symlinks
make[2] : on entre dans le répertoire «
/var/lib/postgresql/postgresql/src/backend/nodes »
make[2]: Rien à faire pour « generated-header-symlinks ».
make[2] : on quitte le répertoire «
/var/lib/postgresql/postgresql/src/backend/nodes »
make -C utils generated-header-symlinks
make[2] : on entre dans le répertoire «
/var/lib/postgresql/postgresql/src/backend/utils »
make -C adt jsonpath_gram.h
make[3] : on entre dans le répertoire «
/var/lib/postgresql/postgresql/src/backend/utils/adt »
make[3]: « jsonpath_gram.h » est à jour.
make[3] : on quitte le répertoire «
/var/lib/postgresql/postgresql/src/backend/utils/adt »
make[2] : on quitte le répertoire «
/var/lib/postgresql/postgresql/src/backend/utils »
make[1] : on quitte le répertoire «
/var/lib/postgresql/postgresql/src/backend »
rm -rf '/var/lib/postgresql/postgresql'/tmp_install
/usr/bin/mkdir -p '/var/lib/postgresql/postgresql'/tmp_install/log
make -C '.' DESTDIR='/var/lib/postgresql/postgresql'/tmp_install install
>'/var/lib/postgresql/postgresql'/tmp_install/log/install.log 2>&1
make -j1 -C src/test/regress checkprep
>>'/var/lib/postgresql/postgresql'/tmp_install/log/install.log 2>&1
PATH="/var/lib/postgresql/postgresql/tmp_install/var/lib/pgsql/local/bin:/var/lib/postgresql/postgresql:$PATH"
LD_LIBRARY_PATH="/var/lib/postgresql/postgresql/tmp_install/var/lib/pgsql/local/lib"
INITDB_TEMPLATE='/var/lib/postgresql/postgresql'/tmp_install/initdb-template
initdb --auth trust --no-sync --no-instructions --lc-messages=C
--no-clean '/var/lib/postgresql/postgresql'/tmp_install/initdb-template
>>'/var/lib/postgresql/postgresql'/tmp_install/log/initdb-template.log 2>&1
make -C src/test/regress check
make[1] : on entre dans le répertoire «
/var/lib/postgresql/postgresql/src/test/regress »
make -C ../../../src/port all
make[2] : on entre dans le répertoire «
/var/lib/postgresql/postgresql/src/port »
make[2]: Rien à faire pour « all ».
make[2] : on quitte le répertoire «
/var/lib/postgresql/postgresql/src/port »
make -C ../../../src/common all
make[2] : on entre dans le répertoire «
/var/lib/postgresql/postgresql/src/common »
make[2]: Rien à faire pour « all ».
make[2] : on quitte le répertoire «
/var/lib/postgresql/postgresql/src/common »
echo "# +++ regress check in src/test/regress +++" &&
PATH="/var/lib/postgresql/postgresql/tmp_install/var/lib/pgsql/local/bin:/var/lib/postgresql/postgresql/src/test/regress:$PATH"
LD_LIBRARY_PATH="/var/lib/postgresql/postgresql/tmp_install/var/lib/pgsql/local/lib"
INITDB_TEMPLATE='/var/lib/postgresql/postgresql'/tmp_install/initdb-template
../../../src/test/regress/pg_regress --temp-instance=./tmp_check
--inputdir=. --bindir=     --dlpath=. --max-concurrent-tests=20
--schedule=./parallel_schedule
# +++ regress check in src/test/regress +++
# initializing database system by copying initdb template
# using temp instance on port 52544 with PID 101875
ok 1         - test_setup                                379 ms
# parallel group (20 tests):  char name oid pg_lsn text varchar money
txid regproc int4 float4 int2 boolean int8 float8 bit enum uuid numeric
rangetypes
ok 2         + boolean                                   124 ms
ok 3         + char                                       38 ms
ok 4         + name                                       42 ms
ok 5         + varchar                                    68 ms
ok 6         + text                                       65 ms
ok 7         + int2                                       95 ms
ok 8         + int4                                       94 ms
ok 9         + int8                                      133 ms
ok 10        + oid                                        64 ms
ok 11        + float4                                     94 ms
ok 12        + float8                                    145 ms
ok 13        + bit                                       151 ms
ok 14        + numeric                                   546 ms
ok 15        + txid                                       72 ms
ok 16        + uuid                                      194 ms
ok 17        + enum                                      153 ms
ok 18        + money                                      67 ms
ok 19        + rangetypes                                719 ms
ok 20        + pg_lsn                                     62 ms
ok 21        + regproc                                    76 ms
# parallel group (20 tests):  md5 lseg time line circle point numerology
date path macaddr8 timetz macaddr interval inet strings timestamp
polygon box timestamptz multirangetypes
ok 22        + strings                                   332 ms
ok 23        + md5                                        26 ms
ok 24        + numerology                                 75 ms
ok 25        + point                                      56 ms
ok 26        + lseg                                       42 ms
ok 27        + line                                       51 ms
ok 28        + box                                       418 ms
ok 29        + path                                       80 ms
ok 30        + polygon                                   397 ms
ok 31        + circle                                     53 ms
ok 32        + date                                       74 ms
ok 33        + time                                       40 ms
ok 34        + timetz                                    106 ms
ok 35        + timestamp                                 376 ms
ok 36        + timestamptz                               429 ms
ok 37        + interval                                  132 ms
ok 38        + inet                                      134 ms
ok 39        + macaddr                                   104 ms
ok 40        + macaddr8                                   79 ms
ok 41        + multirangetypes                           453 ms
# parallel group (19 tests):  comments euc_kr misc_sanity unicode
pg_ndistinct pg_dependencies tstypes oid8 xid encoding geometry horology
expressions mvcc type_sanity database regex stats_import opr_sanity
ok 42        + geometry                                  153 ms
ok 43        + horology                                  156 ms
ok 44        + tstypes                                    78 ms
ok 45        + regex                                     406 ms
ok 46        + type_sanity                               265 ms
ok 47        + opr_sanity                                672 ms
ok 48        + misc_sanity                                41 ms
ok 49        + comments                                   23 ms
ok 50        + expressions                               156 ms
ok 51        + unicode                                    43 ms
ok 52        + xid                                       139 ms
ok 53        + mvcc                                      216 ms
ok 54        + database                                  393 ms
ok 55        + stats_import                              578 ms
ok 56        + pg_ndistinct                               63 ms
ok 57        + pg_dependencies                            67 ms
ok 58        + oid8                                      101 ms
ok 59        + encoding                                  133 ms
ok 60        + euc_kr                                     28 ms
# parallel group (6 tests):  copyencoding copyselect copydml copy
insert_conflict insert
ok 61        + copy                                      189 ms
ok 62        + copyselect                                 41 ms
ok 63        + copydml                                    43 ms
ok 64        + copyencoding                               25 ms
ok 65        + insert                                    508 ms
ok 66        + insert_conflict                           235 ms
# parallel group (7 tests):  create_function_c create_operator
create_type create_misc create_procedure create_schema create_table
ok 67        + create_function_c                          17 ms
ok 68        + create_misc                                73 ms
ok 69        + create_operator                            34 ms
ok 70        + create_procedure                           80 ms
ok 71        + create_table                              566 ms
ok 72        + create_type                                61 ms
ok 73        + create_schema                             105 ms
# parallel group (5 tests):  index_including create_view
index_including_gist create_index_spgist create_index
ok 74        + create_index                             1265 ms
ok 75        + create_index_spgist                       742 ms
ok 76        + create_view                               393 ms
ok 77        + index_including                           266 ms
ok 78        + index_including_gist                      514 ms
# parallel group (16 tests):  create_aggregate errors create_cast
roleattributes infinite_recurse hash_func select drop_if_exists
typed_table create_function_sql create_am vacuum constraints
updatable_views inherit triggers
ok 79        + create_aggregate                           61 ms
ok 80        + create_function_sql                       232 ms
ok 81        + create_cast                                62 ms
ok 82        + constraints                               978 ms
ok 83        + triggers                                 2120 ms
ok 84        + select                                    123 ms
ok 85        + inherit                                  1614 ms
ok 86        + typed_table                               177 ms
ok 87        + vacuum                                    769 ms
ok 88        + drop_if_exists                            137 ms
ok 89        + updatable_views                          1007 ms
ok 90        + roleattributes                             85 ms
ok 91        + create_am                                 312 ms
ok 92        + hash_func                                  99 ms
ok 93        + errors                                     59 ms
ok 94        + infinite_recurse                           84 ms
ok 95        - sanity_check                              146 ms
# parallel group (20 tests):  select_having case select_implicit delete
select_distinct_on prepared_xacts namespace select_into random
transactions portals select_distinct union arrays update subselect
hash_index aggregates join btree_index
ok 96        + select_into                               232 ms
ok 97        + select_distinct                           417 ms
ok 98        + select_distinct_on                        125 ms
ok 99        + select_implicit                            98 ms
ok 100       + select_having                              54 ms
ok 101       + subselect                                 676 ms
ok 102       + union                                     432 ms
ok 103       + case                                       83 ms
ok 104       + join                                     1351 ms
ok 105       + aggregates                               1326 ms
ok 106       + transactions                              267 ms
ok 107       + random                                    242 ms
ok 108       + portals                                   276 ms
ok 109       + arrays                                    473 ms
ok 110       + btree_index                              2589 ms
ok 111       + hash_index                               1052 ms
ok 112       + update                                    667 ms
ok 113       + delete                                    107 ms
ok 114       + namespace                                 194 ms
ok 115       + prepared_xacts                            184 ms
# parallel group (20 tests):  init_privs drop_operator security_label
password tablesample lock collate object_address replica_identity
groupingsets matview identity rowsecurity spgist generated_stored gin
gist join_hash brin privileges
ok 116       + brin                                     3466 ms
ok 117       + gin                                      1677 ms
ok 118       + gist                                     1964 ms
ok 119       + spgist                                   1334 ms
ok 120       + privileges                               4056 ms
ok 121       + init_privs                                 27 ms
ok 122       + security_label                            130 ms
ok 123       + collate                                   326 ms
ok 124       + matview                                   755 ms
ok 125       + lock                                      217 ms
ok 126       + replica_identity                          447 ms
ok 127       + rowsecurity                              1234 ms
ok 128       + object_address                            350 ms
ok 129       + tablesample                               210 ms
ok 130       + groupingsets                              685 ms
ok 131       + drop_operator                              87 ms
ok 132       + password                                  154 ms
ok 133       + identity                                  836 ms
ok 134       + generated_stored                         1380 ms
ok 135       + join_hash                                3427 ms
# parallel group (2 tests):  brin_bloom brin_multi
ok 136       + brin_bloom                                139 ms
ok 137       + brin_multi                                955 ms
# parallel group (20 tests):  nls async dbsize sysviews tid collate.utf8
tidscan tsrf alter_operator create_role misc_functions alter_generic
misc incremental_sort tidrangescan merge create_table_like
collate.icu.utf8 generated_virtual without_overlaps
ok 138       + create_table_like                         794 ms
ok 139       + alter_generic                             270 ms
ok 140       + alter_operator                            158 ms
ok 141       + misc                                      301 ms
ok 142       + async                                      37 ms
ok 143       + dbsize                                     43 ms
ok 144       + merge                                     684 ms
ok 145       + misc_functions                            243 ms
ok 146       + nls                                        32 ms
ok 147       + sysviews                                   94 ms
ok 148       + tsrf                                      149 ms
ok 149       + tid                                       110 ms
ok 150       + tidscan                                   126 ms
ok 151       + tidrangescan                              466 ms
ok 152       + collate.utf8                              120 ms
ok 153       + collate.icu.utf8                          846 ms
ok 154       + incremental_sort                          403 ms
ok 155       + create_role                               181 ms
ok 156       + without_overlaps                         1133 ms
ok 157       + generated_virtual                         977 ms
# parallel group (8 tests):  collate.windows.win1252 amutils
psql_crosstab psql_pipeline collate.linux.utf8 rules psql stats_ext
ok 158       + rules                                     669 ms
ok 159       + psql                                      681 ms
ok 160       + psql_crosstab                              46 ms
ok 161       + psql_pipeline                              58 ms
ok 162       + amutils                                    31 ms
ok 163       + stats_ext                                3211 ms
ok 164       + collate.linux.utf8                        176 ms
ok 165       + collate.windows.win1252                    15 ms
ok 166       - select_parallel                          2655 ms
ok 167       - write_parallel                            298 ms
ok 168       - vacuum_parallel                           268 ms
ok 169       - maintain_every                             32 ms
# parallel group (2 tests):  subscription publication
ok 170       + publication                               849 ms
ok 171       + subscription                              151 ms
# parallel group (17 tests):  portals_p2 combocid xmlmap tsdicts
advisory_lock functional_deps dependency equivclass guc stats_rewrite
select_views indirect_toast window tsearch bitmapops foreign_data
foreign_key
ok 172       + select_views                              325 ms
ok 173       + portals_p2                                 57 ms
ok 174       + foreign_key                              2430 ms
ok 175       + dependency                                163 ms
ok 176       + guc                                       195 ms
ok 177       + bitmapops                                 608 ms
ok 178       + combocid                                   69 ms
ok 179       + tsearch                                   570 ms
ok 180       + tsdicts                                    97 ms
ok 181       + foreign_data                              971 ms
ok 182       + window                                    509 ms
ok 183       + xmlmap                                     85 ms
ok 184       + functional_deps                           119 ms
ok 185       + advisory_lock                              91 ms
ok 186       + indirect_toast                            341 ms
ok 187       + equivclass                                167 ms
ok 188       + stats_rewrite                             218 ms
# parallel group (9 tests):  jsonpath_encoding json_encoding jsonpath
sqljson_jsontable json sqljson_queryfuncs jsonb_jsonpath sqljson jsonb
ok 189       + json                                      166 ms
ok 190       + jsonb                                     572 ms
ok 191       + json_encoding                              23 ms
ok 192       + jsonpath                                   52 ms
ok 193       + jsonpath_encoding                          20 ms
ok 194       + jsonb_jsonpath                            175 ms
ok 195       + sqljson                                   177 ms
ok 196       + sqljson_queryfuncs                        171 ms
ok 197       + sqljson_jsontable                         134 ms
# parallel group (18 tests):  xml prepare limit conversion plancache
returning largeobject polymorphism rowtypes copy2 with sequence truncate
temp rangefuncs domain plpgsql alter_table
ok 198       + plancache                                 254 ms
ok 199       + limit                                     213 ms
ok 200       + plpgsql                                  1478 ms
ok 201       + copy2                                     407 ms
ok 202       + temp                                      552 ms
ok 203       + domain                                    601 ms
ok 204       + rangefuncs                                560 ms
ok 205       + prepare                                    76 ms
ok 206       + conversion                                229 ms
ok 207       + truncate                                  491 ms
ok 208       + alter_table                              2484 ms
ok 209       + sequence                                  456 ms
ok 210       + polymorphism                              350 ms
ok 211       + rowtypes                                  385 ms
ok 212       + returning                                 270 ms
ok 213       + largeobject                               334 ms
ok 214       + with                                      451 ms
ok 215       + xml                                        44 ms
# parallel group (15 tests):  numa hash_part planner_est reloptions
predicate partition_info explain memoize eager_aggregate stats
partition_join partition_aggregate tuplesort indexing partition_prune
ok 216       + partition_join                           1454 ms
ok 217       + partition_prune                          1944 ms
ok 218       + reloptions                                155 ms
ok 219       + hash_part                                  75 ms
ok 220       + indexing                                 1824 ms
ok 221       + partition_aggregate                      1542 ms
ok 222       + partition_info                            178 ms
ok 223       + tuplesort                                1601 ms
ok 224       + explain                                   219 ms
ok 225       + memoize                                   439 ms
ok 226       + stats                                    1413 ms
ok 227       + predicate                                 168 ms
ok 228       + numa                                       30 ms
ok 229       + eager_aggregate                           674 ms
ok 230       + planner_est                                90 ms
# parallel group (4 tests):  compression_lz4 compression_pglz
compression cluster
ok 231       + compression                               158 ms
ok 232       + compression_lz4                            17 ms
ok 233       + compression_pglz                           17 ms
ok 234       + cluster                                   455 ms
# parallel group (2 tests):  oidjoins event_trigger
ok 235       + oidjoins                                  429 ms
ok 236       + event_trigger                             478 ms
ok 237       - event_trigger_login                        45 ms
ok 238       - fast_default                              270 ms
ok 239       - tablespace                                515 ms
1..239
# All 239 tests passed.
make[1] : on quitte le répertoire «
/var/lib/postgresql/postgresql/src/test/regress »

postgres(at)alma:~/postgresql$ make coverage-html
/usr/bin/lcov --gcov-tool /usr/bin/gcov -q --no-external -c -i -d . -d .
-o lcov_base.info
lcov: ERROR: (usage) duplicate file ./src/backend/parser/scan.gcno in
both . and .
    (use "lcov --ignore-errors usage ..." to bypass this error)
Message summary:
  1 error message:
    usage: 1
make: *** [src/Makefile.global:1065: lcov_base.info] Error 1

If I build PG with meson using:

meson setup build --prefix=$TARGET --buildtype=debug -Dcassert=true
-Duuid=e2fs -Dssl=openssl -Dtap_tests=enabled  -Dliburing=enabled
-Db_coverage=true

I get:

postgres(at)alma:~/postgresql$ meson test -C build --print-errorlogs
--suite setup --suite regress
ninja: Entering directory `/var/lib/postgresql/postgresql/build'
ninja: no work to do.
1/4 postgresql:setup / tmp_install               OK   0.24s
2/4 postgresql:setup / install_test_files        OK   0.05s
3/4 postgresql:setup / initdb_cache              OK   1.95s
4/4 postgresql:regress / regress/regress         OK  44.24s   239
subtests passed

Ok:                 4
Expected Fail:      0
Fail:               0
Unexpected Pass:    0
Skipped:            0
Timeout:            0

Full log written to
/var/lib/postgresql/postgresql/build/meson-logs/testlog.txt

postgres(at)alma:~/postgresql$ cd build/
postgres(at)alma:~/postgresql/build$ ninja coverage-html
[1/1] Generating HTML coverage report
FAILED: meson-internal__coverage-html
/usr/bin/meson --internal coverage --html /var/lib/postgresql/postgresql
/var/lib/postgresql/postgresql/subprojects
/var/lib/postgresql/postgresql/build
/var/lib/postgresql/postgresql/build/meson-logs
Capturing coverage data from /var/lib/postgresql/postgresql/build
geninfo cmd: '/usr/bin/geninfo /var/lib/postgresql/postgresql/build
--toolname lcov --output-filename
/var/lib/postgresql/postgresql/build/meson-logs/coverage.info.initial
--initial'
Found gcov version: 14.2.0
Using intermediate gcov format
Recording 'internal' directories:
    /var/lib/postgresql/postgresql/build
Writing temporary data to /tmp/geninfo_datMOLt
Scanning /var/lib/postgresql/postgresql/build for .gcno files ...
Found 1688 graph files in /var/lib/postgresql/postgresql/build
using: chunkSize: 1, nchunks:1688, intervalLength:84
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/interfaces/ecpg/preproc/ecpg.p/keywords.c.gcno
    (use "lcov --ignore-errors gcov,gcov ..." to suppress this warning)
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/port/libpgport_srv.a.p/pg_popcount_aarch64.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/port/libpgport.a.p/pg_popcount_aarch64.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/port/libpgport_shlib.a.p/pg_popcount_aarch64.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/optimizer_geqo_geqo_mutation.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/meson-generated_.._.._include_utils_fmgrtab.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/access_transam_twophase_rmgr.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/utils_init_globals.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/optimizer_geqo_geqo_misc.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/optimizer_geqo_geqo_ox2.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/optimizer_geqo_geqo_pmx.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/utils_mmgr_memdebug.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/optimizer_geqo_geqo_ox1.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/optimizer_geqo_geqo_px.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/port_atomics.c.gcno
lcov: WARNING: (gcov) GCOV did not produce any data for
/var/lib/postgresql/postgresql/build/src/backend/postgres_lib.a.p/optimizer_geqo_geqo_cx.c.gcno
Finished processing 1688 GCNO files
Apply filtering..
Finished filter file processing
Finished .info-file creation
Summary coverage rate:
  source files: 1657
  lines.......: 0.0% (0 of 550468 lines)
  functions...: 0.0% (0 of 30038 functions)
Filter suppressions:
  region:
    6499 instances
    5964 coverpoints
Message summary:
  16 warning messages:
    gcov: 16
Capturing coverage data from /var/lib/postgresql/postgresql/build
geninfo cmd: '/usr/bin/geninfo /var/lib/postgresql/postgresql/build
--toolname lcov --output-filename
/var/lib/postgresql/postgresql/build/meson-logs/coverage.info.run
--no-checksum --branch-coverage --rc branch_coverage=1'
Found gcov version: 14.2.0
Using intermediate gcov format
Recording 'internal' directories:
    /var/lib/postgresql/postgresql/build
Writing temporary data to /tmp/geninfo_dat5fWu
Scanning /var/lib/postgresql/postgresql/build for .gcda files ...
Found 1366 data files in /var/lib/postgresql/postgresql/build
using: chunkSize: 1, nchunks:1366, intervalLength:68
lcov: WARNING: (inconsistent) /usr/include/python3.13/object.h:950:
unexecuted block on non-branch line with non-zero hit count.  Use
"geninfo --rc geninfo_unexecuted_blocks=1 to set count to zero.
    (use "lcov --ignore-errors inconsistent,inconsistent ..." to
suppress this warning)
Message summary:
  1 error message:
    negative: 1
  1 warning message:
    inconsistent: 1
lcov: ERROR: (negative) Unexpected negative hit count '-5' for line
/var/lib/postgresql/postgresql/src/port/snprintf.c:528" while capturing
from
/var/lib/postgresql/postgresql/build/src/port/libpgport_shlib.a.p/snprintf.c.gcda.
    (use "lcov --ignore-errors negative ..." to bypass this error)
Traceback (most recent call last):
  File "/usr/bin/meson", line 27, in <module>
    sys.exit(mesonmain.main())
             ~~~~~~~~~~~~~~^^
  File "/usr/lib/python3/dist-packages/mesonbuild/mesonmain.py", line
293, in main
    return run(sys.argv[1:], launcher)
  File "/usr/lib/python3/dist-packages/mesonbuild/mesonmain.py", line
281, in run
    return run_script_command(args[1], args[2:])
  File "/usr/lib/python3/dist-packages/mesonbuild/mesonmain.py", line
222, in run_script_command
    return module.run(script_args)
           ~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/mesonbuild/scripts/coverage.py",
line 213, in run
    return coverage(options.outputs, options.source_root,
                    options.subproject_root, options.build_root,
                    options.log_dir, options.use_llvm_cov,
                    options.gcovr, options.llvm_cov)
  File "/usr/lib/python3/dist-packages/mesonbuild/scripts/coverage.py",
line 121, in coverage
    subprocess.check_call([lcov_exe,
    ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
                           '--directory', build_root,
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<4 lines>...
                          lcov_config +
                          ^^^^^^^^^^^^^
                          gcov_tool_args)
                          ^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 419, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['lcov', '--directory',
'/var/lib/postgresql/postgresql/build', '--capture', '--output-file',
'/var/lib/postgresql/postgresql/build/meson-logs/coverage.info.run',
'--no-checksum', '--rc', 'branch_coverage=1']' returned non-zero exit
status 1.
ninja: build stopped: subcommand failed.
postgres(at)alma:~/postgresql/build$

What should I do ?

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Vik Fearing 2026-10-03 16:18:43 Re: Logical Implication
Previous Message Manu 2026-10-03 14:39:17 Re: BUG #19686: Rolling back SET TABLESPACE