Performance analysis of plpgsql code
От | Karl O. Pinc |
---|---|
Тема | Performance analysis of plpgsql code |
Дата | |
Msg-id | 1119915045l.4428l.5l@mofo обсуждение исходный текст |
Ответы |
Re: Performance analysis of plpgsql code
|
Список | pgsql-performance |
Hi, I'm having a hard time finding the poorly performing statements in my plpgsql procedures, many of which are triggers. Am I missing something? I can get the query plans by starting up a new connection and doing: SET DEBUG_PRINT_PLAN TO TRUE; SET CLIENT_MIN_MESSAGES TO DEBUG1; And then running code that exercises my functions. Then I can find the queries that, in theory, could have problems. But problems remain after this. What I'd really like is a SET variable (or maybe a clause in CREATE FUNCTION) that causes any functions compiled to issue EXPLAIN ANALYZE output and the query text itself, to be RAISEd. Then I could watch the performance as it ran. Short of that I think I'm going to be reduced to writing a C function that returns the real system time so I can spatter my code with RAISE statements that indicate actual execution time. Is there a better approach? Does anybody have such a C function handy? Karl <kop@meme.com> Free Software: "You don't pay back, you pay forward." -- Robert A. Heinlein
В списке pgsql-performance по дате отправления: