Zettelkasten

django_mysql_gevent 이슈

·수정 2026.04.23·수정 1

요약

  • 핵심 아이디어 한 줄 요약
  • “이 노트는 왜 중요한가?” → 맥락 설명

본문

  • django_mysql_gevent 내부에서 CONN_AGE_MAX를 0으로 처리하는 부분이 있음
  • 이거 때문에 매번 요청이 끝날때 BaseDatabaseWrapper에서 연결을 close함
    • self.connection = None 처리
  • 요청이 시작될때 db cursor접근시 self.ensure_connection을 호출하는데
    • self.connection이 None이면 BaseDatabaseWrapper.connect를 다시 호출함
    • BaseDatabaseWrapper.connect에서는 get_new_connection 호출할때, pool에서 만들어진 connection을 반환하지만 BaseDatabaseWrapper.connect에서 별도로 재사용하는 connection인지 아닌지를 확인하지않고 connection_created를 호출함

참고