Message-ID: From: "sehrope (@sehrope)" To: "pgjdbc/pgjdbc" Date: Tue, 24 Feb 2026 16:16:54 +0000 Subject: Re: [pgjdbc/pgjdbc] PR #3895: implement require_auth, this is pretty much how libpq does this. In-Reply-To: References: List-Id: X-GitHub-Author-Login: sehrope X-GitHub-Comment-Id: 3953226708 X-GitHub-Comment-Type: issue_comment X-GitHub-Issue: 3895 X-GitHub-Repo: pgjdbc/pgjdbc X-GitHub-Type: comment X-GitHub-Url: https://github.com/pgjdbc/pgjdbc/pull/3895#issuecomment-3953226708 Content-Type: text/plain; charset=utf-8 I'm able to reproduce this error locally and tracked it down with git bisect: ``` 3fab588d93ae4cfeb13f75ba08894b804b256d51 is the first bad commit commit 3fab588d93ae4cfeb13f75ba08894b804b256d51 Author: Vladimir Sitnikov Date: Mon Jan 19 12:16:57 2026 +0300 test: add autosave=always|never|conservative and cleanupSavepoints=true|false to the randomized CI jobs :040000 040000 f663e7608969c1d7de2dbcc4df3bf8003a51c112 a2ace7b120c0c1e16f7640077410ce511aec429d M .github :040000 040000 93916651a74db1749db76dba81068287f9c87e0a c44dce9d078a5385473e9eccf9143057f0f38937 M build-logic :040000 040000 d1201b2777e25f2e89f51c6729e97511fb352e02 fa625fdb5b472f40550997b24dd625da8d265b09 M pgjdbc bisect run success ``` Here's the steps if you want to try this locally: Save this script as `build/database-encoding-test` and `chmod +x`: ``` #!/usr/bin/env bash main () { ./gradlew -Duser.country=de -D.user.language=DE -DreWriteBatchedInserts=true -Dautosave=always cleanTest postgresql:test --tests DatabaseEncodingTest } main "$@" ``` Start the 9.1 server with: ``` PGV=9.1 TZ=UTC XA=no SSL=no SCRAM=no CREATE_REPLICAS=no docker/bin/postgres-server ``` Then starting at the HEAD of this PR (or any other "bad") commit: ``` git bisect start git bisect bad git bisect good 79b784e3 # This is REL42.7.9 git bisect run build/database-encoding-test ``` That commit message in 3fab588d93ae4cfeb13f75ba08894b804b256d51 is deceiving as well. It's labeled `test: add autosave=... to the CI jobs` but it's actually making some changes to the `QueryExecutorImpl` as well. Still have to step through to understand why, but it's something in that commit that changed either when we're creating a save point or when we're cleaning them up. That combined with the lower defaults for 9.1 is causing this to fail over there for some specific combo of parameters.