버전에 따른 파티션 테이블 인덱싱, 버전 10 VS 버전 11

Postgresql은 파티션 테이블을 생성하는 과정에서 헤더(부모) 테이블을 정의하는데 여기에 인덱스 정보를 선언할 수 있다. Postgresql 버전 10까지는 헤더 테이블로 생성한 하위 파티션 테이블에는 부모 테이블에 적용한 인덱스가 생성되지 않았다. 하지만 버전 11부터는 부모 테이블에 적용된 인덱스가 생성된 하위 테이블에도 똑같이 적용이 됩니다.

여러 환경에서 같은 파티션 테이블을 사용하면서 같은 쿼리를 동작시켰는데 속도가 전혀 다르다면, 일단 실행계획을 살펴보자. 그 결과 어떤 환경은 인덱스가 적용되고, 다른 환경은 인덱스가 적용되지 않는다면 Postgresql 버전을 의심해보자.

https://pgdash.io/blog/partition-postgres-11.html 링크에서 3. Automatic Index Creation 섹션을 살펴보면 11버전부터 해당 기능이 추가된 것을 확인할 수 있다.