Replies: 2 comments
|
I think there are two separate problems here, and it's worth splitting them up. First, the pooler error. Your full message is a If that fails the same way, it points to a shared connection or routing problem rather than something specific to your role, though it still doesn't validate the custom role. I'd double-check the number in the hostname ( If On the $0 alternative: the direct connection ( Heads up for once you're connected: If you go that route, be aware of what it grants. Since your role is The last line protects against accidental writes, but it's only a default that a session can turn off, so don't treat it as a security boundary. Run And once a dump succeeds, try restoring it somewhere. A clean export isn't a proven backup until you've restored it. Hope that helps! |
|
Adding three angles to @saraeloop's diagnosis, because the combination of custom role + shared pooler + Free plan has specific failure pockets worth separating: 1. The pooler's user registry is a separate store, and it syncs on its own schedule. Supavisor doesn't read 2. The direct-connection fallback has an IPv6 trap on the Free plan. Before concluding the pooler is the only path: AAAA records only → the direct path is closed from that host without the IPv4 add-on, and the pooler is genuinely your only route — which strengthens the support case rather than weakening it. 3. The backup-architecture note: pg_dump and the pooler don't mix well anyway. For your actual goal (least-privilege automated logical backups), one compatibility point worth knowing before you invest more in the custom-role-via-pooler route: The |
Uh oh!
There was an error while loading. Please reload this page.
Hello!
I'm trying to connect a custom Postgres role through Supabase's shared Session Pooler, but Supavisor returns a tenant/user-not-found error.
Environment:
Error:
FATAL: (ENOTFOUND) tenant/user personal_os_backup_reader.[PROJECT-REF] not found
I'm using the documented [ROLE].[PROJECT-REF] username format and the pooler hostname copied from the Supabase Connect configuration.
The role exists in Postgres and has been verified as LOGIN, NOINHERIT, and NOBYPASSRLS, with no role expiration.
Troubleshooting completed:
The purpose is a least-privilege, encrypted off-site logical-backup system. Our synthetic backup pipeline passes encryption, private storage, retrieval, decryption, integrity, and cleanup tests. Real Production backups are blocked at database connection establishment.
Questions:
We want to preserve least privilege and avoid using the postgres administrator role as a workaround.
Thanks for any guidance.
All reactions