docker-compose/ext-src/postgis-src/README-Neon.md
This directory contains configuration files and patches for running PostGIS tests in the Neon database environment.
PostGIS is a spatial database extension for PostgreSQL that adds support for geographic objects. Testing PostGIS compatibility ensures that Neon's modifications to PostgreSQL don't break compatibility with this critical extension.
The test setup includes:
postgis-no-upgrade-test.patch: Disables upgrade tests by removing the upgrade test section from regress/runtest.mkpostgis-regular-v16.patch: Version-specific patch for PostgreSQL v16postgis-regular-v17.patch: Version-specific patch for PostgreSQL v17regular-test.sh: Script to run PostGIS tests as a regular userneon-test.sh: Script to handle version-specific test configurationsraster_outdb_template.sql: Template for raster tests with explicit file pathsImportant Note: The test exclusions listed below are specifically for regular-user tests against staging instances. These exclusions are necessary because staging instances run with limited privileges and cannot perform operations requiring superuser access. Docker-compose based tests are not affected by these exclusions.
These tests cannot be run as a regular user:
estimatedextentregress/core/legacyregress/core/typmodregress/loader/TestSkipANALYZEregress/loader/TestANALYZEThese tests need direct filesystem access that is only possible for superusers:
loader/load_outdbThese tests have assumptions that don't always hold true:
regress/core/computed_columns - Assumes computed columns always outperform alternatives, which is not consistently trueThese tests attempt to modify the postgis.gdal_enabled_drivers parameter, which is only accessible to superusers:
raster/test/regress/rt_wkbraster/test/regress/rt_addbandraster/test/regress/rt_setbandpathraster/test/regress/rt_fromgdalrasterraster/test/regress/rt_asgdalrasterraster/test/regress/rt_astiffraster/test/regress/rt_asjpegraster/test/regress/rt_aspngraster/test/regress/permitted_gdal_driversBasicOutDB, Tiled10x10, Tiled10x10Copy, Tiled8x8, TiledAuto, TiledAutoSkipNoData, TiledAutoCopynpopulate_topology_layerrenametopogeometrycolumn\copy commands