Tom Lane wrote:
>Ferruccio Zamuner <nonsolosoft@diff.org> writes:
>
>
>>I need to have in the log_line_prefix the search_path where the query
>>has run.
>>So last week I've started to read elog.c and I was thinking about a
>>small patch there using a new "%S" option.
>>
>>
>
>There's no chance of that code working when not inside a transaction;
>which means that in most of the scenarios where you really want a log
>entry to be made, it will fail.
>
> regards, tom lane
>
>
Now I've found a simpler solution:
case 'S': /* estrae il search_path */ if (namespace_search_path != NULL)
appendStringInfo(buf,"%s ", namespace_search_path); break;
It seems to work.
But I would like to understand why previous code was wrong.