Skip to content

Commit f29da1b

Browse files
authored
Merge pull request supabase#13961 from supabase/hi/use-new-project-pgbouncer-api-route
feat: use new project pgbouncer config api
2 parents 55c104c + 2af896b commit f29da1b

File tree

2 files changed

+12
-7
lines changed

2 files changed

+12
-7
lines changed

studio/components/interfaces/Settings/Database/ConnectionPooling.tsx

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,8 @@ const ConnectionPooling: FC<Props> = () => {
6868
)
6969
}
7070

71-
const { project } = poolingConfiguration
72-
7371
// for older projects
74-
if (!project.pgbouncer_enabled && project.pool_mode == null)
72+
if (!poolingConfiguration.pgbouncer_enabled && poolingConfiguration.pool_mode == null)
7573
return (
7674
<Panel
7775
title={
@@ -85,7 +83,7 @@ const ConnectionPooling: FC<Props> = () => {
8583
</Panel.Content>
8684
</Panel>
8785
)
88-
const formModel = project
86+
const formModel = poolingConfiguration
8987
const DB_FIELDS = ['db_host', 'db_name', 'db_port', 'db_user', 'inserted_at']
9088
const connectionInfo = pluckObjectFields(formModel, DB_FIELDS)
9189
const BOUNCER_FIELDS = [
@@ -137,15 +135,22 @@ export const PgbouncerConfig: FC<ConfigProps> = observer(
137135
pool_mode: bouncerInfo.pool_mode || 'transaction',
138136
default_pool_size: bouncerInfo.default_pool_size || '',
139137
ignore_startup_parameters: bouncerInfo.ignore_startup_parameters || '',
138+
pgbouncer_enabled: bouncerInfo.pgbouncer_enabled,
140139
})
141140

142141
const updateConfig = async (updatedConfig: any) => {
143142
try {
144-
const response = await patch(`${API_URL}/props/pooling/${projectRef}/config`, updatedConfig)
143+
const response = await patch(`${API_URL}/projects/${projectRef}/config/pgbouncer`, {
144+
pgbouncer_enabled: updatedConfig.pgbouncer_enabled,
145+
default_pool_size: updatedConfig.default_pool_size,
146+
ignore_startup_parameters: updatedConfig.ignore_startup_parameters,
147+
pool_mode: updatedConfig.pool_mode,
148+
max_client_conn: updatedConfig.max_client_conn,
149+
})
145150
if (response.error) {
146151
throw response.error
147152
} else {
148-
setUpdates({ ...response.project })
153+
setUpdates({ ...response })
149154
ui.setNotification({ category: 'success', message: 'Successfully saved settings' })
150155
}
151156
} catch (error: any) {

studio/stores/app/DatabaseStore.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ export default class DatabaseStore extends PostgresMetaInterface<any> {
2424
async getPoolingConfiguration(projectRef: string) {
2525
try {
2626
// Need to use project ref -> shouldn;t need to pass it in via argument
27-
const url = `${API_URL}/props/pooling/${projectRef}/config`
27+
const url = `${API_URL}/projects/${projectRef}/config/pgbouncer`
2828
const response = await get(url, { headers: this.headers })
2929
if (response.error) throw response.error
3030
return response

0 commit comments

Comments
 (0)