| From: | Tomas Vondra <tomas(at)vondra(dot)me> |
|---|---|
| To: | Alexander Lakhin <exclusion(at)gmail(dot)com>, Daniel Gustafsson <daniel(at)yesql(dot)se> |
| Cc: | Andres Freund <andres(at)anarazel(dot)de>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Bernd Helmle <mailings(at)oopsware(dot)de>, Michael Paquier <michael(at)paquier(dot)xyz>, Michael Banck <mbanck(at)gmx(dot)net>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: Changing the state of data checksums in a running cluster |
| Date: | 2026-08-23 17:30:32 |
| Message-ID: | 4b2485e8-1329-468e-924c-5ccdef5ea398@vondra.me |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On 8/23/26 19:00, Alexander Lakhin wrote:
> ...
>
> # while running 'psql --no-psqlrc --no-align --tuples-only --quiet --
> dbname port=19054 host=/tmp/sMj0ywRk6i dbname='postgres' --file - --
> variable ON_ERROR_STOP=1' with sql 'SELECT pg_enable_data_checksums(0, 100);
> # ' at .../src/test/modules/test_checksums/t/DataChecksums/Utils.pm line
> 139.
> # Looks like your test exited with 29 just after 37.
> t/007_pgbench_standby.pl ... Dubious, test returned 29 (wstat 7424, 0x1d00)
> All 37 subtests passed
> t/008_pitr.pl .............. 2/? # die: error running SQL:
> 'psql:<stdin>:1: ERROR: failed to start background worker to process
> data checksums'
> # while running 'psql --no-psqlrc --no-align --tuples-only --quiet --
> dbname port=26149 host=/tmp/dLjAB54enA dbname='postgres' --file - --
> variable ON_ERROR_STOP=1' with sql 'SELECT pg_enable_data_checksums(0, 100);
> # ' at .../src/test/modules/test_checksums/t/DataChecksums/Utils.pm line
> 139.
> # Looks like your test exited with 29 just after 2.
> t/008_pitr.pl .............. Dubious, test returned 29 (wstat 7424, 0x1d00)
> All 2 subtests passed
> t/009_fpi.pl ............... ok
> t/010_backup_straddle.pl ... ok
> t/011_standby_straddle.pl .. ok
>
> Test Summary Report
> -------------------
> t/006_pgbench_single.pl (Wstat: 512 (exited 2) Tests: 47 Failed: 2)
> Failed tests: 18, 22
> Non-zero exit status: 2
> t/007_pgbench_standby.pl (Wstat: 7424 (exited 29) Tests: 37 Failed: 0)
> Non-zero exit status: 29
> t/008_pitr.pl (Wstat: 7424 (exited 29) Tests: 2 Failed: 0)
> Non-zero exit status: 29
> Files=11, Tests=224, 379 wallclock secs ( 0.07 usr 0.02 sys + 18.55
> cusr 38.01 csys = 56.65 CPU)
> Result: FAIL
>
> Could you please have a look if this can be fixed?
>
I'm 99% sure this is a configuration issue in the test, not a bug in the
online checksums code. It happens because with
debug_parallel_query = regress
queries start enough parallel workers to exhaust max_worker_processes,
and so we fail to start the checksum worker.
I've modified the TAP tests to add
max_worker_processes = 16
max_parallel_workers = 16
and with that change it passes just fine.
regards
--
Tomas Vondra
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Alexandre Felipe | 2026-08-23 21:14:39 | Re: SLOPE - Planner optimizations on monotonic expressions. |
| Previous Message | Alexander Lakhin | 2026-08-23 17:00:01 | Re: Changing the state of data checksums in a running cluster |