Persistent Session Pooler authentication failure after database password reset #50800
Replies: 3 comments 2 replies
|
Two things worth doing before waiting on the ticket, because between them they resolve most of these. 1. Take URI encoding out of the picture entirely. Even when a password looks fine, If that works, the password was never the problem, the transport was. A surprising number of "verified no encoding issues" cases end here. 2. Bisect the pooler from the credentials. Same command on port 6543 (transaction mode). If 6543 works and 5432 does not, it's a Supavisor tenant issue and support needs to resync, which is exactly what your ticket is for. If both fail with the same error, it's still credentials or region. On region: make sure the pooler host matches the project's region. A mismatched host normally gives If a plain password on both ports still fails, it's on Supabase's side, and the ticket number you have is the right path. |
|
This issue typically occurs due to a credential desynchronization between PostgreSQL and the Supavisor connection pooler cluster rather than a client-side formatting error. Root Cause: Supavisor ETS Cache Staleness
Recommended Resolution StepsBefore waiting for ticket 1. Verify Direct Connection (Bypass Pooler)Confirm that PostgreSQL itself has adopted the new password by connecting directly (note: requires direct IPv6 or IPv4 Add-on): PGPASSWORD='<new_password>' psql -h db.<project-ref>.supabase.co -p 5432 -U postgres -d postgres -v sslmode=requireIf direct connection succeeds, the password is functional in Postgres and the failure is confirmed to be isolated to the pooler cache. 2. Force Supavisor Tenant Reload via DashboardYou can trigger an immediate tenant reload in Supavisor without downtime:
3. Trigger a Fast Reboot (If Cache Persists)If the pooler configuration save does not immediately clear the cached credential:
|
|
That log line provides the exact clue needed to pinpoint what is happening inside the connection pooler. The Architectural Meaning of Your Supavisor LogIn Supavisor (
This proves that Supavisor is not holding a stale credential for Why Does This Occur After a Dashboard Reset?
The 60-Second Resolution (Bypassing the Dashboard & Support Ticket)Because the Supabase Dashboard SQL Editor runs over an internal admin connection that does not require your Step 1: Force Set the Password Directly via SQL Editor
Step 2: Test with Connection Parameters (Avoid URI Parsing)Test connecting through Supavisor using explicit key-value parameters rather than a connection URI: Session Mode (Port 5432): PGPASSWORD='YourNewCleanPassword123' psql "host=aws-1-eu-west-1.pooler.supabase.com port=5432 dbname=postgres user=postgres.zgeasjkulipcfdjmbfvm sslmode=require"Transaction Mode (Port 6543): PGPASSWORD='YourNewCleanPassword123' psql "host=aws-1-eu-west-1.pooler.supabase.com port=6543 dbname=postgres user=postgres.zgeasjkulipcfdjmbfvm sslmode=require"Step 3: If Using a Connection String URIIf your application requires a connection string URI, ensure the password is URL-encoded: (e.g., if you later add special characters, encode Once you execute the |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Project ref: zgeasjkulipcfdjmbfvm
Direct DB connection is unavailable from my current IPv4-only network, so I’m using the Shared Session Pooler.
Connection parameters are copied directly from the Supabase Connect panel:
Session Pooler
port 5432
database postgres
user postgres.zgeasjkulipcfdjmbfvm
SSL required
I reset the database password, updated it immediately locally, and verified there are no quoting, whitespace, CRLF, duplicate-variable or URL-encoding issues.
A fresh psql test still returns:
FATAL: password authentication failed
The issue has persisted across multiple hours and two password resets.
Has anyone seen Supavisor remain out of sync with the project DB password, or is there another project-level setting I should check?
Additional diagnostic: both Shared Pooler modes fail with the same authentication error.
Session mode on port 5432: FATAL: password authentication failed
Transaction mode on port 6543: FATAL: password authentication failed
Same project, same username, same freshly reset database password, same pooler host copied from the Supabase Connect panel.
Please check Supavisor credential synchronization / tenant authentication for this project.
Support ticket: SU-482765
Hello,
I have now correlated a fresh failed connection with the Supavisor server logs.
Project: zgeasjkulipcfdjmbfvm
Shared Pooler Session mode:
The client receives:
FATAL: password authentication failed
At the exact same timestamp, Supavisor logs show:
ClientHandler: Exchange error: password authentication failed for user "postgres"
SecretChecker not started, using a one-off auth query connection
The database password has already been reset and the local credentials were updated immediately afterward.
The same credentials also fail through the Shared Transaction Pooler on port 6543 with the same authentication error.
Host, username and port have been verified against the Supabase Connect configuration.
Please check the Supavisor tenant/credential state for this project and whether the pooler is using stale or unsynchronized credentials for the postgres role.
Support ticket: SU-482765
All reactions