Fix auto-explain JSON output to be valid JSON.

Problem reported by Peter Eisentraut.

Backpatched to release 9.0.
This commit is contained in:
Andrew Dunstan 2012-02-13 08:22:15 -05:00
parent 21b1634275
commit 21320763a3
1 changed files with 7 additions and 0 deletions

View File

@ -299,6 +299,13 @@ explain_ExecutorEnd(QueryDesc *queryDesc)
if (es.str->len > 0 && es.str->data[es.str->len - 1] == '\n')
es.str->data[--es.str->len] = '\0';
/* Fix JSON to output an object */
if (auto_explain_log_format == EXPLAIN_FORMAT_JSON)
{
es.str->data[0] = '{';
es.str->data[es.str->len - 1] = '}';
}
/*
* Note: we rely on the existing logging of context or
* debug_query_string to identify just which statement is being