Skip to content

CI: run the pg_checksums TAP tests - #2239

Open
tuhaihe wants to merge 3 commits into
apache:mainfrom
tuhaihe:ci-pg-checksums
Open

tuhaihe wants to merge 3 commits into
apache:mainfrom
tuhaihe:ci-pg-checksums

Conversation

@tuhaihe

@tuhaihe tuhaihe commented Nov 4, 2026

Copy link
Copy Markdown
Member

CI does not run the TAP tests in src/bin/pg_checksums, so nobody sees when they break.

Add an ic-pg-checksums test job that runs them on Rocky 8, 9 and 10.

Assisted-by: Claude Code

Fixes #ISSUE_Number

What does this PR do?

Type of Change

  • Bug fix (non-breaking change)
  • New feature (non-breaking change)
  • Breaking change (fix or feature with breaking changes)
  • Documentation update

Breaking Changes

Test Plan

  • Unit tests added/updated
  • Integration tests added/updated
  • Passed make installcheck
  • Passed make -C src/test installcheck-cbdb-parallel

Impact

Performance:

User-facing changes:

Dependencies:

Checklist

Additional Context

CI Skip Instructions


CI does not run the TAP tests in src/bin/pg_checksums, so nobody sees
when they break.

Add an ic-pg-checksums test job that runs them on Rocky 8, 9 and 10.

Assisted-by: Claude Code
002_actions.pl starts the stopped node with "pg_ctl start -o '-C
data_checksums'" and expects the postmaster to print "on".  In
Cloudberry, the postmaster stops before it handles -C when it gets no
contentid:

  FATAL:  contentid (from -C option) is not specified or is invalid.

PostgreSQL::Test::Cluster gives a node its contentid only through the
options it passes at start, and this pg_ctl call does not use them.
Pass --gp_contentid=0 here too.  Now the test passes 74 of 74 on Rocky
8, 9 and 10, instead of 73.

Assisted-by: Claude Code
@tuhaihe

tuhaihe commented Nov 4, 2026 •

Copy link
Copy Markdown
Member Author
make[1]: Leaving directory '/__w/cloudberry/cloudberry/src/backend'
echo "# +++ tap install-check in src/bin/pg_checksums +++" && rm -rf '/__w/cloudberry/cloudberry/src/bin/pg_checksums'/tmp_check && /usr/bin/mkdir -p '/__w/cloudberry/cloudberry/src/bin/pg_checksums'/tmp_check && cd . && TESTLOGDIR='/__w/cloudberry/cloudberry/src/bin/pg_checksums/tmp_check/log' TESTDATADIR='/__w/cloudberry/cloudberry/src/bin/pg_checksums/tmp_check' PATH="/usr/local/cloudberry-db/bin:/__w/cloudberry/cloudberry/src/bin/pg_checksums:$PATH" PGPORT='65432' top_builddir='/__w/cloudberry/cloudberry/src/bin/pg_checksums/../../..' PG_REGRESS='/__w/cloudberry/cloudberry/src/bin/pg_checksums/../../../src/test/regress/pg_regress' /usr/bin/prove -I ../../../src/test/perl/ -I .  t/*.pl
# +++ tap install-check in src/bin/pg_checksums +++
t/001_basic.pl .... ok

#   Failed test 'data_checksums=on is reported on an offline cluster stdout /(?^:^on$)/'
#   at t/002_actions.pl line 188.
#                   '2026-11-04 00:26:30.830    PST [9174] FATAL:  contentid (from -C option) is not specified or is invalid.  This value must be >= -1.  The contentid value to pass can be determined this server's entry in the segment configuration; it may be -1 for a master, or in utility mode.
# '
#     doesn't match '(?^:^on$)'
# Looks like you failed 1 test of 66.
t/002_actions.pl .. 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/66 subtests 

Test Summary Report
-------------------
t/002_actions.pl (Wstat: 256 Tests: 66 Failed: 1)
  Failed test:  23
  Non-zero exit status: 1
Files=2, Tests=74,  3 wallclock secs ( 0.03 usr  0.00 sys +  0.79 cusr  0.67 csys =  1.49 CPU)
Result: FAIL
make: *** [Makefile:47: installcheck] Error 1
make: Leaving directory '/__w/cloudberry/cloudberry/src/bin/pg_checksums'

Let us add commits to fix the failed test.

@tuhaihe tuhaihe moved this to In Progress in Merge postgres 16 Nov 4, 2026
@tuhaihe

tuhaihe commented Nov 5, 2026

Copy link
Copy Markdown
Member Author

Note: This separate PR addresses the failing test and is easy to review; once fixed, I’ll consolidate the similar tests into one.

The comments that the earlier commits of this change added name the
project as "GPDB".  Use "Cloudberry" instead.  Only comments change.

Assisted-by: Claude Code

@leborchuk leborchuk left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

2 participants