Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions config/supervisord.conf
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,15 @@ autorestart=unexpected

[program:log_event_loop]
command=/code/manage.py log_loop
environment=LOGGING_FILENAME=log_event_loop_%(ENV_SERVER_NUMBER)s.log
environment=LOGGING_FILENAME=log_event_loop_%(ENV_SERVER_NUMBER)s.log,HLL_DB_DISABLE_CONNECTION_POOL=1
startretries=1000000
startsecs=1
autostart=true
autorestart=true

[program:log_stream]
command=/code/manage.py log_stream
environment=LOGGING_FILENAME=log_stream_%(ENV_SERVER_NUMBER)s.log
environment=LOGGING_FILENAME=log_stream_%(ENV_SERVER_NUMBER)s.log,HLL_DB_DISABLE_CONNECTION_POOL=1
startretries=5
startsecs=0
autostart=true
Expand All @@ -49,7 +49,7 @@ autorestart=true

[program:auto_settings]
command=/code/manage.py auto_settings
environment=LOGGING_FILENAME=auto_settings_%(ENV_SERVER_NUMBER)s.log
environment=LOGGING_FILENAME=auto_settings_%(ENV_SERVER_NUMBER)s.log,HLL_DB_DISABLE_CONNECTION_POOL=1
startretries=100
startsecs=1
autostart=true
Expand All @@ -70,7 +70,7 @@ autostart=true

[program:live_stats_refresh]
command=/code/manage.py live_stats_loop
environment=LOGGING_FILENAME=live_stats_loop_%(ENV_SERVER_NUMBER)s.log
environment=LOGGING_FILENAME=live_stats_loop_%(ENV_SERVER_NUMBER)s.log,HLL_DB_DISABLE_CONNECTION_POOL=1
startretries=100
startsecs=1
autostart=true
Expand Down
3 changes: 1 addition & 2 deletions rcon/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import rcon.user_config
import rcon.user_config.utils
import rcon.watch_killrate
from rcon import auto_settings, broadcast, maps, routines
from rcon import auto_settings, broadcast, routines
from rcon.automods import automod
from rcon.blacklist import BlacklistCommandHandler
from rcon.cache_utils import RedisCached, get_redis_pool, invalidates
Expand All @@ -30,7 +30,6 @@
from rcon.user_config.auto_settings import AutoSettingsConfig
from rcon.user_config.log_stream import LogStreamUserConfig
from rcon.user_config.scoreboard import _port_legacy_scorebot_urls
from rcon.user_config.vote_map import VoteMapUserConfig
from rcon.user_config.webhooks import (
BaseMentionWebhookUserConfig,
BaseUserConfig,
Expand Down
10 changes: 7 additions & 3 deletions rcon/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
from typing import Any, Generator, List, Literal, Optional, Sequence, overload

import pydantic
from sqlalchemy import TIMESTAMP, Enum, ForeignKey, String, create_engine, select, text, JSON
from sqlalchemy import TIMESTAMP, Enum, ForeignKey, String, create_engine, select, text, JSON, Engine, NullPool, Pool
from sqlalchemy.dialects.postgresql import JSONB
from sqlalchemy.exc import InvalidRequestError, ProgrammingError
from sqlalchemy.ext.hybrid import hybrid_property
Expand Down Expand Up @@ -71,7 +71,7 @@

PLAYER_ID = "player_id"

_ENGINE = None
_ENGINE: Engine | None = None


def _connection_name() -> str:
Expand Down Expand Up @@ -109,7 +109,11 @@ def get_engine():
logger.error(msg)
raise ValueError(msg)

_ENGINE = create_engine(url, echo=False, connect_args={"application_name":_connection_name()})
pool: type[Pool] | None = None
if os.getenv("HLL_DB_DISABLE_CONNECTION_POOL") is not None:
pool = NullPool

_ENGINE = create_engine(url, poolclass=pool, echo=False, connect_args={"application_name":_connection_name()})
return _ENGINE


Expand Down
Loading