mirror of
https://github.com/supabase/supabase.git
synced 2026-05-06 08:56:46 -04:00
add supavisor troubleshooting section (#20814)
* add supavisor troubleshooting section * fix escape * reorder
This commit is contained in:
@@ -336,10 +336,6 @@ All Postgres features can be used with this option.
|
||||
|
||||
This is the suggested option for serverless functions. A connection is assigned to the client for the duration of a transaction. Two consecutive transactions from the same client could be executed over two different connections. Some session-based Postgres features such as prepared statements are not available with this option.
|
||||
|
||||
### Statement
|
||||
|
||||
This is the most granular option. Connections are returned to the pool after every statement. Transactions with multiple statements are not allowed. This is best used when `AUTOCOMMIT` is in use.
|
||||
|
||||
### Supavisor vs PgBouncer
|
||||
|
||||
Supabase previously used PgBouncer for connection pooling. We have now deprecated PgBouncer in favor of Supavisor. Supavisor is available on all new and existing projects.
|
||||
@@ -350,6 +346,31 @@ PgBouncer is now deprecated and is in the process of being removed from the plat
|
||||
|
||||
[Read the full pgBouncer and IPv4 deprecation details](https://github.com/orgs/supabase/discussions/17817).
|
||||
|
||||
## Troubleshooting Supavisor
|
||||
|
||||
Connection pooler logs are found [here](https://supabase.com/dashboard/project/_/logs/pooler-logs). The following are common errors and their solutions:
|
||||
|
||||
- Max client connections reached
|
||||
This error happens when the number of connections to Supavisor is more than [the allowed limit of your compute add-on](https://supabase.com/docs/guides/platform/compute-add-ons). Upgrade the database to a higher compute add-on to increase the number of Supavisor connections.
|
||||
|
||||
- Connection failed \{:error, :eaddrnotavail} to 'db.xxx.supabase.co':5432
|
||||
Supavisor cannot connect to the customer database. This is usually caused if the target database is unable to respond.
|
||||
|
||||
- Connection failed \{:error, :nxdomain} to 'db.xxx.supabase.co':5432
|
||||
Supavisor cannot connect to the customer database. This is usually caused if the target database is unable to respond.
|
||||
|
||||
- Connection closed when state was authentication
|
||||
This error happens when either the database doesn’t exist or if the user doesn't have the right credentials.
|
||||
|
||||
- Subscribe error: \{:error, :worker_not_found}
|
||||
This log event is emitted when the client tries to connect to the database, but Supavisor does not have the necessary information to route the connection. Try reconnecting to the database as it can take some time for the project information to propagate to Supavisor.
|
||||
|
||||
- Subscribe error: \{:error, \{:badrpc, \{:error, \{:erpc, :timeout}}}}
|
||||
This is a timeout error when the communication between different Supavisor nodes takes longer than expected. Try reconnecting to the database.
|
||||
|
||||
- Terminating with reason :client_termination when state was :busy
|
||||
This error happens when the client terminates the connection before the connection with the database is completed.
|
||||
|
||||
export const Page = ({ children }) => <Layout meta={meta} children={children} />
|
||||
|
||||
export default Page
|
||||
|
||||
Reference in New Issue
Block a user