I've taken on supporting our ODK system, and i'm having some issues updating to the latest version.
We're moving from v2024.1.0, after following the instructions, i'm getting a "error code 502" on the login page when signing in again.
postgres has been running at 100% for an extended period.
Does anyone have any suggestions of what to try next?
We've set --max_old_space_size=12288, so i don't think memory is an issue.
Here's the docker compose logs output after attempting to sign in:
mail-1 | using non-split configuration scheme from /etc/exim4/exim4.conf.template
mail-1 | 1 LOG: MAIN
mail-1 | 1 exim 4.96 daemon started: pid=1, -q15m, listening for SMTP on port 25 (IPv6 and IPv4)
mail-1 | 274 Exim version 4.96 uid=100 gid=102 pid=274 D=80001
mail-1 | 274 Berkeley DB: Berkeley DB 5.3.28: (September 9, 2013)
mail-1 | 274 Support for: crypteq iconv() IPv6 GnuTLS TLS_resume move_frozen_messages DANE DKIM DNSSEC Event I18N OCSP PIPECONNECT PRDR Queue_Ramp SOCKS SRS TCP_Fast_Open
mail-1 | 274 Lookups (built-in): lsearch wildlsearch nwildlsearch iplsearch cdb dbm dbmjz dbmnz dnsdb dsearch nis nis0 passwd
mail-1 | 274 Authenticators: cram_md5 external plaintext
mail-1 | 274 Routers: accept dnslookup ipliteral manualroute queryprogram redirect
mail-1 | 274 Transports: appendfile/maildir/mailstore autoreply lmtp pipe smtp
mail-1 | 274 Fixed never_users: 0
mail-1 | 274 Configure owner: 0:0
mail-1 | 274 Size of off_t: 8
mail-1 | 274 LOG: queue_run MAIN
mail-1 | 274 Start queue run: pid=274
mail-1 | 274 LOG: queue_run MAIN
mail-1 | 274 End queue run: pid=274
postgres14-1 | Fri May 30 02:18:03 PM GMT 2025 [start-postgres.sh] Starting postgres...
postgres14-1 |
postgres14-1 | PostgreSQL Database directory appears to contain a database; Skipping initialization
postgres14-1 |
postgres14-1 | 2025-05-30 14:18:03.557 UTC [1] LOG: starting PostgreSQL 14.10 (Debian 14.10-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit
postgres14-1 | 2025-05-30 14:18:03.559 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432
postgres14-1 | 2025-05-30 14:18:03.559 UTC [1] LOG: listening on IPv6 address "::", port 5432
postgres14-1 | 2025-05-30 14:18:03.576 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres14-1 | 2025-05-30 14:18:03.591 UTC [28] LOG: database system was shut down at 2025-05-30 14:15:56 UTC
postgres14-1 | 2025-05-30 14:18:03.605 UTC [1] LOG: database system is ready to accept connections
postgres14-1 | 2025-05-30 14:18:04.338 UTC [35] LOG: incomplete startup packet
postgres-1 | Fri May 30 02:18:03 PM GMT 2025 [upgrade-postgres.sh] Checking for existing upgrade marker file...
postgres-1 | Fri May 30 02:18:03 PM GMT 2025 [upgrade-postgres.sh] Upgrade has been run previously.
postgres-1 | Fri May 30 02:18:03 PM GMT 2025 [upgrade-postgres.sh] Complete.
enketo-1 | [start-enketo.sh] Checking secrets exist...
enketo-1 | [start-enketo.sh] Generating enketo configuration...
enketo-1 | [start-enketo.sh] Starting enketo...
enketo-1 | yarn workspace v1.22.22
enketo-1 | yarn run v1.22.22
enketo-1 | $ node .
enketo-1 | Worker 2 ready for duty at port 8005! (environment: production)
enketo-1 | Worker 1 ready for duty at port 8005! (environment: production)
service-1 | wait-for-it: waiting 15 seconds for postgres14:5432
service-1 | wait-for-it: postgres14:5432 is available after 0 seconds
service-1 | generating local service configuration..
service-1 | running migrations..
enketo_redis_cache-1 | 1:C 30 May 2025 14:18:03.669 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see ************* To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
enketo_redis_cache-1 | 1:C 30 May 2025 14:18:03.669 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
enketo_redis_cache-1 | 1:C 30 May 2025 14:18:03.669 * Redis version=7.4.2, bits=64, commit=00000000, modified=0, pid=1, just started
enketo_redis_cache-1 | 1:C 30 May 2025 14:18:03.669 * Configuration loaded
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.669 * monotonic clock: POSIX clock_gettime
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.670 * Running mode=standalone, port=6380.
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.671 * Server initialized
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.671 * Loading RDB produced by version 7.2.4
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.671 * RDB age 127 seconds
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.671 * RDB memory usage when created 32.22 Mb
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.784 * Done loading RDB, keys loaded: 3799, keys expired: 0.
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.784 * DB loaded from disk: 0.114 seconds
enketo_redis_cache-1 | 1:M 30 May 2025 14:18:03.784 * Ready to accept connections tcp
enketo_redis_main-1 | 1:C 30 May 2025 14:18:03.778 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see ************* To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
nginx-1 | writing client config...
nginx-1 | .....+.+........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...............+......+..+...+....+........+...+....+...+..+......+.......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.+..................+....+......+.....+.......+.................+....+..+....+.....+....+......+...+.....+.+......+...+..+.........+.......+..+...+....+...+...+............+........+...+......+...+...+....+...........+....+......+..+.............+.................+......+......+.+.....+....+.....+....+...........+....+......+...+.....+.......+......+............+............+...............+...+........+.........+.+.....+...+.........+.+..............+.+.....+.+........+.+......+.....+.+..+...............+...+..........+.........+...+...........+.......+..+.+......+...+..+....+.........+...........+......+...............+.........+.+........+...+....+.........+............+...+......+...+......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
nginx-1 | ...+.........+......+...+....+...+...+.........+...+.........+........+................+...............+......+.....+.+...+..+...+......+.+..+.......+...+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.+........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*......+.+..+.......+.....+.+.................+...+.......+...+............+..+..........+...+.....+...+.......+...+............+.........+.....+...+......+.+......+...............+..+......+.........+.+.....+.+...+................................+...+.+..+.......+..+....+............+..+.+.....+.+.....+...+.......+......+.........+...+..+...+...+.............+.....................+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
nginx-1 | -----
nginx-1 | writing fresh nginx templates...
nginx-1 | starting nginx for custom ssl and self-signed certs...
nginx-1 | 2025/05/30 14:18:05 [notice] 1#1: using the "epoll" event method
nginx-1 | 2025/05/30 14:18:05 [notice] 1#1: nginx/1.27.4
nginx-1 | 2025/05/30 14:18:05 [notice] 1#1: built by gcc 12.2.0 (Debian 12.2.0-14)
nginx-1 | 2025/05/30 14:18:05 [notice] 1#1: OS: Linux 5.4.0-216-generic
nginx-1 | 2025/05/30 14:18:05 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
nginx-1 | 2025/05/30 14:18:05 [notice] 1#1: start worker processes
nginx-1 | 2025/05/30 14:18:05 [notice] 1#1: start worker process 15
nginx-1 | 2025/05/30 14:18:05 [notice] 1#1: start worker process 16
nginx-1 | **.**.**.** - - [30/May/2025:14:18:12 +0000] "GET / HTTP/1.1" 200 1116 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36" "-"
nginx-1 | 2025/05/30 14:18:12 [error] 16#16: *1 connect() failed (111: Connection refused) while connecting to upstream, client: **.**.**.**, server: *************, request: "GET /v1/sessions/restore HTTP/1.1", upstream: "*************/v1/sessions/restore", host: "*************", referrer: "*************/"
nginx-1 | **.**.**.** - - [30/May/2025:14:18:12 +0000] "GET /v1/sessions/restore HTTP/1.1" 502 552 "*************/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36" "-"
nginx-1 | **.**.**.** - - [30/May/2025:14:18:12 +0000] "GET /client-config.json HTTP/1.1" 200 27 "*************/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36" "-"
nginx-1 | **.**.**.** - - [30/May/2025:14:18:27 +0000] "GET /version.txt HTTP/1.1" 200 209 "*************/login?next=/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36" "-"
nginx-1 | **.**.**.** - - [30/May/2025:14:18:34 +0000] "POST /v1/sessions HTTP/1.1" 502 552 "*************/login?next=/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36" "-"
nginx-1 | 2025/05/30 14:18:34 [error] 16#16: *4 connect() failed (111: Connection refused) while connecting to upstream, client: **.**.**.**, server: *************, request: "POST /v1/sessions HTTP/1.1", upstream: "*************/v1/sessions", host: "*************", referrer: "*************/login?next=/"
nginx-1 | 2025/05/30 14:18:36 [error] 16#16: *4 connect() failed (111: Connection refused) while connecting to upstream, client: **.**.**.**, server: *************, request: "POST /v1/sessions HTTP/1.1", upstream: "*************/v1/sessions", host: "*************", referrer: "*************/login?next=/"
nginx-1 | **.**.**.** - - [30/May/2025:14:18:36 +0000] "POST /v1/sessions HTTP/1.1" 502 552 "*************/login?next=/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36" "-"
nginx-1 | 172.18.0.1 - - [30/May/2025:14:18:41 +0000] "POST /v1/sessions HTTP/1.1" 421 173 "-" "curl/7.68.0" "-"
pyxform-1 | [2025-05-30 14:18:03 +0000] [1] [INFO] Starting gunicorn 23.0.0
pyxform-1 | [2025-05-30 14:18:03 +0000] [1] [INFO] Listening at: http://0.0.0.0:80 (1)
pyxform-1 | [2025-05-30 14:18:03 +0000] [1] [INFO] Using worker: sync
pyxform-1 | [2025-05-30 14:18:03 +0000] [7] [INFO] Booting worker with pid: 7
pyxform-1 | [2025-05-30 14:18:03 +0000] [8] [INFO] Booting worker with pid: 8
pyxform-1 | [2025-05-30 14:18:03 +0000] [9] [INFO] Booting worker with pid: 9
pyxform-1 | [2025-05-30 14:18:03 +0000] [10] [INFO] Booting worker with pid: 10
pyxform-1 | [2025-05-30 14:18:03 +0000] [11] [INFO] Booting worker with pid: 11
enketo_redis_main-1 | 1:C 30 May 2025 14:18:03.778 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
enketo_redis_main-1 | 1:C 30 May 2025 14:18:03.778 * Redis version=7.4.2, bits=64, commit=00000000, modified=0, pid=1, just started
enketo_redis_main-1 | 1:C 30 May 2025 14:18:03.778 * Configuration loaded
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.779 * monotonic clock: POSIX clock_gettime
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.781 * Running mode=standalone, port=6379.
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.783 * Server initialized
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.783 * Loading RDB produced by version 7.2.4
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.783 * RDB age 127 seconds
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.783 * RDB memory usage when created 11.32 Mb
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.939 * Done loading RDB, keys loaded: 23823, keys expired: 0.
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.939 * DB loaded from disk: 0.157 seconds
enketo_redis_main-1 | 1:M 30 May 2025 14:18:03.939 * Ready to accept connections tcp