From c2d678db34b2152f36a4744ffb38b529f04cfac8 Mon Sep 17 00:00:00 2001 From: Kate Grechishkina Date: Fri, 17 Oct 2025 14:03:27 +0300 Subject: [PATCH 1/3] Document required hot_standby_feedback postgresql setting --- doc/install/requirements.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/install/requirements.md b/doc/install/requirements.md index cbbec5c709292c..3d4d0c575381f8 100644 --- a/doc/install/requirements.md +++ b/doc/install/requirements.md @@ -133,7 +133,8 @@ Here are some required settings for externally managed PostgreSQL instances. | `maintenance_work_mem` | minimum `64 MB` | You require [more for larger database servers](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/8377#note_1728173087). | | `max_connections` | minimum `400` | Calculate based on your GitLab components. See [Tune PostgreSQL](../administration/postgresql/tune.md) page for detailed guidance. | | `shared_buffers` | minimum `2 GB` | You require more for larger database servers. The Linux package default is set to 25% of server RAM. | -| `statement_timeout` | maximum 1 min | A statement timeout prevents runaway issues with locks and the database rejecting new clients. One minute matches the Puma rack timeout setting. | +| `statement_timeout` | maximum 1 min | A statement timeout prevents runaway issues with locks and the database rejecting new clients. One minute matches the Puma rack timeout setting. | +| `hot_standby_feedback` | `on` | For configurations with multiple nodes and [database load balancing](https://docs.gitlab.com/administration/postgresql/database_load_balancing/#configuring-database-load-balancing) configured, make sure that any database node that is a replica or could be a replica has `hot_standby_feedback` set to avoid replicas building up lag. | You can configure some PostgreSQL settings for the specific database, rather than for all databases on the server. -- GitLab From da7e4ad992e45b11157cbdcdb999d1e3d0a43e33 Mon Sep 17 00:00:00 2001 From: Kate Grechishkina Date: Mon, 20 Oct 2025 15:38:05 +0300 Subject: [PATCH 2/3] Apply 2 suggestion(s) to 1 file(s) Co-authored-by: GitLab Duo Co-authored-by: Rafael Henchen --- doc/install/requirements.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/install/requirements.md b/doc/install/requirements.md index 3d4d0c575381f8..824d237c2520c2 100644 --- a/doc/install/requirements.md +++ b/doc/install/requirements.md @@ -133,8 +133,8 @@ Here are some required settings for externally managed PostgreSQL instances. | `maintenance_work_mem` | minimum `64 MB` | You require [more for larger database servers](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/8377#note_1728173087). | | `max_connections` | minimum `400` | Calculate based on your GitLab components. See [Tune PostgreSQL](../administration/postgresql/tune.md) page for detailed guidance. | | `shared_buffers` | minimum `2 GB` | You require more for larger database servers. The Linux package default is set to 25% of server RAM. | -| `statement_timeout` | maximum 1 min | A statement timeout prevents runaway issues with locks and the database rejecting new clients. One minute matches the Puma rack timeout setting. | -| `hot_standby_feedback` | `on` | For configurations with multiple nodes and [database load balancing](https://docs.gitlab.com/administration/postgresql/database_load_balancing/#configuring-database-load-balancing) configured, make sure that any database node that is a replica or could be a replica has `hot_standby_feedback` set to avoid replicas building up lag. | +| `statement_timeout` | 15000 to 60000 | A statement timeout prevents runaway issues with locks and the database rejecting new clients. We recommend using values between 15 and 60 seconds (15000 to 60000 milliseconds), where one minute matches the Puma rack timeout setting. | +| `hot_standby_feedback` | `on` | For configurations with multiple nodes and [database load balancing](https://docs.gitlab.com/administration/postgresql/database_load_balancing/#configuring-database-load-balancing) configured, ensure that all replica nodes have `hot_standby_feedback` enabled to prevent lag buildup. | You can configure some PostgreSQL settings for the specific database, rather than for all databases on the server. -- GitLab From c847150f0ddba7b97bc51916b9e5dd81cf2aea1f Mon Sep 17 00:00:00 2001 From: Kate Grechishkina Date: Tue, 21 Oct 2025 12:58:21 +0300 Subject: [PATCH 3/3] Fix link format --- doc/install/requirements.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/install/requirements.md b/doc/install/requirements.md index 824d237c2520c2..6cb780a7840a10 100644 --- a/doc/install/requirements.md +++ b/doc/install/requirements.md @@ -134,7 +134,7 @@ Here are some required settings for externally managed PostgreSQL instances. | `max_connections` | minimum `400` | Calculate based on your GitLab components. See [Tune PostgreSQL](../administration/postgresql/tune.md) page for detailed guidance. | | `shared_buffers` | minimum `2 GB` | You require more for larger database servers. The Linux package default is set to 25% of server RAM. | | `statement_timeout` | 15000 to 60000 | A statement timeout prevents runaway issues with locks and the database rejecting new clients. We recommend using values between 15 and 60 seconds (15000 to 60000 milliseconds), where one minute matches the Puma rack timeout setting. | -| `hot_standby_feedback` | `on` | For configurations with multiple nodes and [database load balancing](https://docs.gitlab.com/administration/postgresql/database_load_balancing/#configuring-database-load-balancing) configured, ensure that all replica nodes have `hot_standby_feedback` enabled to prevent lag buildup. | +| `hot_standby_feedback` | `on` | For configurations with multiple nodes and [database load balancing](../administration/postgresql/database_load_balancing.md#configuring-database-load-balancing) configured, ensure that all replica nodes have `hot_standby_feedback` enabled to prevent lag buildup. | You can configure some PostgreSQL settings for the specific database, rather than for all databases on the server. -- GitLab