GitLab pages deploys greater than ~15MB fail sometimes with "pages:deploy - PG::UnableToSend: no connection to the server"

Summary

GitLab pages deploys greater than ~15MB fail sometimes with pages:deploy - PG::UnableToSend: no connection to the server. Pages deploys smaller than that seem to always work.

Steps to reproduce

  1. Create 20MB GitLab Pages project

Note: server is using S3 for pages & every other data type that supports S3

pages_external_url 'https://pages.mydomain.com'

gitlab_rails['object_store']['enabled'] = true
gitlab_rails['object_store']['connection'] = ...
...
gitlab_rails['object_store']['objects']['pages']['bucket'] = "pages"
...
pages_nginx['redirect_http_to_https'] = true
gitlab_pages['access_control'] = true

# increase puma worker memory limit as recommended by GitLab
# see https://docs.gitlab.com/ee/administration/operations/puma.html#change-the-memory-limit-setting
puma['per_worker_max_memory_mb'] = 1200

Other than above, no other pages specific settings are set in gitlab.rb.

Example Project

n/a

What is the current bug behavior?

GitLab pages deploys greater than ~15MB fail sometimes with pages:deploy - PG::UnableToSend: no connection to the server.

What is the expected correct behavior?

GitLab pages deploys greater than ~15MB never fail.

Relevant logs and/or screenshots

image

Output of checks

Results of GitLab environment info

Expand for output related to GitLab environment info

System information
System:         OracleServer 7.9
Proxy:          no
Current User:   git
Using RVM:      no
Ruby Version:   2.7.5p203
Gem Version:    3.1.4
Bundler Version:2.2.33
Rake Version:   13.0.6
Redis Version:  6.2.6
Sidekiq Version:6.4.0
Go Version:     unknown

GitLab information
Version:        14.10.5-ee
Revision:       af6735ad95f
Directory:      /opt/gitlab/embedded/service/gitlab-rails
DB Adapter:     PostgreSQL
DB Version:     12.7
URL:            x
HTTP Clone URL: x
SSH Clone URL:  x
Elasticsearch:  no
Geo:            no
Using LDAP:     no
Using Omniauth: yes
Omniauth Providers: saml

GitLab Shell
Version:        13.25.1
Repository storage paths:

GitLab Shell path:              /opt/gitlab/embedded/service/gitlab-shell

Results of GitLab application Check

Expand for output related to the GitLab application check

healthy

Possible fixes

Support tickets

Edited by Ben Bodenmiller