백엔드 커리큘럼 심화: PostgreSQL Generic Plan과 Custom Plan, 파라미터 편향으로 생기는 성능 급락을 진단하는 법
PostgreSQL prepared statement가 generic plan과 custom plan을 고르는 원리부터 파라미터 편향 진단, JDBC·커넥션 풀 관측, 안전한 완화와 재발 방지 기준까지 정리한 실무 플레이북입니다.
PostgreSQL prepared statement가 generic plan과 custom plan을 고르는 원리부터 파라미터 편향 진단, JDBC·커넥션 풀 관측, 안전한 완화와 재발 방지 기준까지 정리한 실무 플레이북입니다.
Prepared statement 재사용으로 read-only를 우회하는 버그, side-effectful SELECT의 잘못된 라우팅, extended query timeout 사각지대 등 QA 4차에서 발견된 5건의 버그를 분석하고 수정한다.
Transaction Pooling 환경에서 Prepared Statement를 사용할 수 없는 PgBouncer의 한계를 극복하기 위해, Parse/Bind 메시지를 인터셉트하여 Simple Query로 합성하는 Multiplexing 기능을 구현한다.