# Same isolated network; default production retention/cleanup budgets, 8 capture workers. services: db: command: [postgres, -c, max_connections=200, -c, autovacuum_max_workers=4, -c, autovacuum_naptime=10s, -c, autovacuum_vacuum_threshold=1000, -c, autovacuum_vacuum_scale_factor=0.02, -c, autovacuum_analyze_scale_factor=0.05, -c, autovacuum_vacuum_cost_limit=1000] packmate: command: - java - -Xmx2g - -jar - /app/app.jar - --spring.datasource.url=jdbc:postgresql://db:5432/packmate - --spring.datasource.password=network-stress - --packmate.capture-mode=LIVE - --packmate.interface-name=eth0 - --packmate.local-ip=172.31.250.10 - --packmate.web.account-login=stress - --packmate.web.account-password=stress - --packmate.timeout.tcp-stream-timeout=5 - --packmate.timeout.check-interval=1 - --packmate.capture.workers=8 - --packmate.capture.queue-capacity=250000 - --packmate.cleanup.enabled=true - --packmate.cleanup.threshold=15 - --packmate.cleanup.interval-seconds=10 - --packmate.cleanup.commit-grace-seconds=120 - --packmate.cleanup.batch-size=500 - --packmate.cleanup.max-batches-per-run=20 - --server.port=65000 - --server.address=0.0.0.0 tester: command: [sh, -c, "pip install -q psycopg[binary]==3.2.9 websockets==15.0.1 && python /app/tests/soak.py"] environment: MCP_SOAK_SECONDS: ${MCP_SOAK_SECONDS:-2100} volumes: - ../../stress/network:/stress:ro