Respostas:
Não, não há estrutura ou função detalhada de auditoria / relatório do otimizador.
Sua melhor ferramenta é 'gdb'. Ao contrário do MS SQL Server, o PostgreSQL é de código aberto; você pode criar com os símbolos de depuração ativados, anexar um depurador e rastrear exatamente o que está fazendo.
Isso não significa que é fácil, é claro. Um conjunto fixo de pontos de interrupção e macros gdb para produzir um rastro do que o planejador / otimizador está fazendo seria muito bom. Não estou ciente de nenhuma dessas ferramentas neste momento.
gdb
pontos de perf
rastreamento do usuário , ou pontos de rastreamento do espaço do usuário, serão muito úteis para você.
Você também pode ativar o log de depuração detalhado e alguns dos parâmetros de rastreamento e, em postgresql.conf
seguida, examinar os arquivos de log detalhados resultantes.
Há alguma documentação (à qual eu adicionei informações sobre descarte de árvores de planos etc.) nas Perguntas frequentes do desenvolvedor do PostgreSQL: https://wiki.postgresql.org/wiki/Developer_FAQ . Isso pode ser útil. Você também deve ler os principais documentos do desenvolvedor.