summary refs log tree commit diff
path: root/.github/workflows/tests.yml
diff options
context:
space:
mode:
authorkegsay <kegan@matrix.org>2023-10-27 18:29:20 +0100
committerGitHub <noreply@github.com>2023-10-27 18:29:20 +0100
commit11a8ae06325e9a8c9d57e3dff5fdf46a90309cd1 (patch)
tree510f3d18a21c32e0dd114046b914eb0c9c0d5615 /.github/workflows/tests.yml
parentEnsure local invited & knocking users leave before purge. (#16559) (diff)
downloadsynapse-11a8ae06325e9a8c9d57e3dff5fdf46a90309cd1.tar.xz
complement: enable dirty runs (#16520)
* complement: enable dirty runs

* Add changelog

* Set a low connpool limit when running in Complement

Dirty runs can cause many containers to be running concurrently,
which seems to easily exhaust resources on the host. The increased
speedup from dirty runs also seems to use more db connections on
workers, which are misconfigured currently to have
`SUM(workers * cp_max) > max_connections`, causing
```
FATAL:  sorry, too many clients already
```
which results in tests failing.

* Try p=2 concurrency to restrict slowness of servers which causes partial state join tests to flake

* Debug logging

* Only run flakey tests

* Only adjust connection pool limits in worker mode

* Move cp vars to somewhere where they get executed in CI

* Move cp values back to where they actually work

* Debug logging

* Try p=1 to see if this makes worker mode happier

* Remove debug logging
Diffstat (limited to '.github/workflows/tests.yml')
-rw-r--r--.github/workflows/tests.yml3
1 files changed, 2 insertions, 1 deletions
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 13746608d4..12420911b4 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -638,9 +638,10 @@ jobs:
       - name: Prepare Complement's Prerequisites
         run: synapse/.ci/scripts/setup_complement_prerequisites.sh
 
+        # use p=1 concurrency as GHA boxes are underpowered and don't like running tons of synapses at once.
       - run: |
           set -o pipefail
-          COMPLEMENT_DIR=`pwd`/complement synapse/scripts-dev/complement.sh -json 2>&1 | synapse/.ci/scripts/gotestfmt
+          COMPLEMENT_DIR=`pwd`/complement synapse/scripts-dev/complement.sh -p 1 -json 2>&1 | synapse/.ci/scripts/gotestfmt
         shell: bash
         env:
           POSTGRES: ${{ (matrix.database == 'Postgres') && 1 || '' }}