Files
neon/test_runner/sql_regress
Konstantin Knizhnik b00a0096bf Reintialize page in allocNewBuffer only when buffer is returned (#12399)
## Problem

See https://github.com/neondatabase/neon/issues/12387

`allocNewBuffer` initialise page with zeros 
but not always return it because of parity checks.
In case of wrong parity the page is rejected and as a result we have
dirty page with zero LSN, which cause assertion failure on neon_write
when page is evicted from shared buffers.

## Summary of changes

Perform, page initialisation in `allocNewBuffer` only when buffer is
returned (parity check is passed).

Postgres PRs:
https://github.com/neondatabase/postgres/pull/661
https://github.com/neondatabase/postgres/pull/662
https://github.com/neondatabase/postgres/pull/663
https://github.com/neondatabase/postgres/pull/664

---------

Co-authored-by: Konstantin Knizhnik <knizhnik@neon.tech>
Co-authored-by: Kosntantin Knizhnik <konstantin.knizhnik@databricks.com>
2025-07-22 17:50:26 +00:00
..
2022-08-30 18:25:38 +03:00

Simple tests that only need a PostgreSQL connection to run. These are run by the regress/test_pg_regress.py test, which uses the PostgreSQL pg_regress utility.

To add a new SQL test:

  • add sql script to run to neon_regress/sql/testname.sql
  • add expected output to neon_regress/expected/testname.out
  • add testname to parallel_schedule

That's it. For more complex tests see PostgreSQL regression tests in src/test/regress. These work basically the same.