Skip to content

Commit e1fd0a4

Browse files
committed
fix: add sqlalchemy connection pool recycling to prevent EOF drops
1 parent e796b35 commit e1fd0a4

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

src/backend/db/base.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,12 @@ def get_fernet():
3838
DATABASE_URL = os.getenv("DATABASE_URL")
3939

4040
# Create Engine
41-
engine = create_engine(DATABASE_URL, echo=False)
41+
engine = create_engine(
42+
DATABASE_URL,
43+
echo=False,
44+
pool_pre_ping=True, # Test connection liveness upon checkout
45+
pool_recycle=300, # Recycle connections older than 5 minutes to prevent EOF drops by proxy/DB
46+
)
4247

4348
# Session Factory
4449
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)

0 commit comments

Comments
 (0)