fix(login): http 2 memory leak's (#11830)

# Which Problems Are Solved
All http 2 based connect-es clients caused memory leaks in our testing
using the login v2 application as the host.

# How the Problems Are Solved
Switch to connect-rpc based http 1.1 transport for the login v2

# Additional Changes
Improved the otel interceptor implementation and tests.

# Additional Context
- connect-rpc is only enabled for v2 API's so we have to make sure to
not use any v1 apis in the login but this should be the case anyways.
- Discussion #10562

---------

Co-authored-by: Max Peintner <max@caos.ch>
This commit is contained in:
Ramon
2026-03-17 14:29:21 +00:00
committed by GitHub
co-authored by Max Peintner
parent c1be72765c
commit fca2589fc3
11 changed files with 1294 additions and 845 deletions
+15 -26
View File
@@ -1,5 +1,4 @@
services:
devcontainer:
image: mcr.microsoft.com/devcontainers/typescript-node:22-bookworm
volumes:
@@ -15,7 +14,6 @@ services:
DEVCONTAINER_DB_HOST: db
DEVCONTAINER_API_HOST: api
DEVCONTAINER_LOGIN_HOST: login
DEVCONTAINER_LOGIN_API_MOCK_HOST: login-api-mock
DEVCONTAINER_DB_API_INTEGRATION_HOST: db-api-integration
DEVCONTAINER_DB_FUNCTIONAL_UI_HOST: db-functional-ui
ports:
@@ -31,58 +29,49 @@ services:
volumes:
- db-data-dev:/var/lib/postgresql
healthcheck:
test: [ "CMD-SHELL", "pg_isready", "-U", "postgres" ]
test: ["CMD-SHELL", "pg_isready", "-U", "postgres"]
interval: "10s"
timeout: "30s"
retries: 5
start_period: "20s"
ports:
- 5432:5432
- "5432:5432"
db-api-integration:
image: 'postgres:18'
image: "postgres:18"
env_file:
- ./.env.db
environment:
PGPORT: 5433
command: postgres -c shared_preload_libraries=pg_stat_statements -c pg_stat_statements.track=all -c shared_buffers=1GB -c work_mem=16MB -c effective_io_concurrency=100 -c wal_level=minimal -c archive_mode=off -c max_wal_senders=0
healthcheck:
test: [ "CMD-SHELL", "pg_isready", "-U", "postgres" ]
interval: '10s'
timeout: '30s'
test: ["CMD-SHELL", "pg_isready", "-U", "postgres"]
interval: "10s"
timeout: "30s"
retries: 5
start_period: '20s'
start_period: "20s"
ports:
- 5433:5433
- "5433:5433"
cache-api-integration:
image: 'redis:8'
image: "redis:8"
ports:
- 6379:6379
- "6379:6379"
db-functional-ui:
image: 'postgres:18'
image: "postgres:18"
env_file:
- ./.env.db
environment:
PGPORT: 5434
healthcheck:
test: [ "CMD-SHELL", "pg_isready", "-U", "postgres" ]
interval: '10s'
timeout: '30s'
test: ["CMD-SHELL", "pg_isready", "-U", "postgres"]
interval: "10s"
timeout: "30s"
retries: 5
start_period: '20s'
start_period: "20s"
ports:
- "5434:5434"
login-api-mock:
build:
context: ../apps/login/integration/api-mock
additional_contexts:
zitadel-protos: ../proto
ports:
- 22220:22220
- 22222:22222
volumes:
db-data-dev: