Merge pull request #981 from rznzippy/bugfix/980/database-connections-leakage

Fix database connections leakage (#980)
This commit is contained in:
sabaimran 2024-11-17 21:01:06 -08:00 committed by GitHub
commit c72813ba67
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -27,6 +27,7 @@ from django.contrib.sessions.backends.db import SessionStore
from django.db.models import Prefetch, Q from django.db.models import Prefetch, Q
from django.db.models.manager import BaseManager from django.db.models.manager import BaseManager
from django.db.utils import IntegrityError from django.db.utils import IntegrityError
from django_apscheduler import util
from django_apscheduler.models import DjangoJob, DjangoJobExecution from django_apscheduler.models import DjangoJob, DjangoJobExecution
from fastapi import HTTPException from fastapi import HTTPException
from pgvector.django import CosineDistance from pgvector.django import CosineDistance
@ -606,6 +607,7 @@ class ProcessLockAdapters:
logger.debug(f"Skip removing {operation} process lock as it was not set") logger.debug(f"Skip removing {operation} process lock as it was not set")
@util.close_old_connections
def run_with_process_lock(*args, **kwargs): def run_with_process_lock(*args, **kwargs):
"""Wrapper function used for scheduling jobs. """Wrapper function used for scheduling jobs.
Required as APScheduler can't discover the `ProcessLockAdapter.run_with_lock' method on its own. Required as APScheduler can't discover the `ProcessLockAdapter.run_with_lock' method on its own.