다른 UDF에서 사용중인 사용자 정의 함수 (UDF)를 변경하면 PostgreSQL은 양쪽 모두에 대해 실행 계획을 다시 작성합니까 아니면 변경된 계획에 대해서만 실행 계획을 다시 작성합니까?PostgreSQL에서 함수의 실행 계획
답변
함수가 변경되지 않으면 모든 쿼리의 실행 계획이 캐시에 남아 있어야합니다.
변경 한 기능에 대한 실행 계획 만 다시 계산됩니다.
캐시 된 모든 계획을 버리려면 SQL 문 DISCARD PLANS
을 사용할 수 있습니다.
[Inlining_of_SQL_functions] (https://wiki.postgresql.org/wiki/Inlining_of_SQL_functions)에 의존합니까? –
PL/pgSQL 함수의 경우에만 SQL 함수에 대한 계획이 캐시되지 않습니다. –
LANGUAGE 절에 지정된 내용입니까? –
'EXPLAIN'을 사용하여 어떤 일이 벌어지는 지 보지 못합니까? –
그래, 문제는 캐시에 관한 것이 었습니다. 나쁜 말씨로 유감스럽게 생각합니다. 다른 질문을 한 번 해보십시오. [PostgreSQL의 PL/pgSQL 함수 실행 계획 캐시] (https://stackoverflow.com/questions/46698386)/execution-plan-cache-for-pl-pgsql-functions-in-postgresql) –