diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 4188c5ca77..e0ad0cf302 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -1,4 +1,4 @@ - + Server Configuration @@ -3001,7 +3001,7 @@ local0.* /var/log/postgresql %l - Number of the log line for each process, starting at 1 + Number of the log line for each session or process, starting at 1 no @@ -3167,7 +3167,7 @@ local0.* /var/log/postgresql provides a convenient way to import log files into a database table. This option emits log lines in comma-separated-value format, with these columns: timestamp with milliseconds, user name, database - name, session ID, host:port number, process ID, per-process line + name, process ID, host:port number, session ID, per-session or -process line number, command tag, session start time, virtual transaction ID, regular transaction id, error severity, SQL state code, error message, error message detail, hint, internal query that led to the error (if @@ -3181,13 +3181,13 @@ local0.* /var/log/postgresql CREATE TABLE postgres_log ( - log_time timestamp with time zone, + log_time timestamp(3) with time zone, user_name text, database_name text, - session_id text, - connection_from text, process_id integer, - process_line_num bigint, + connection_from text, + session_id text, + session_line_num bigint, command_tag text, session_start_time timestamp with time zone, virtual_transaction_id text, @@ -3203,7 +3203,7 @@ CREATE TABLE postgres_log query text, query_pos integer, location text, - PRIMARY KEY (session_id, process_line_num) + PRIMARY KEY (session_id, session_line_num) ); diff --git a/src/backend/utils/error/elog.c b/src/backend/utils/error/elog.c index 57bd3b5036..daef42c3c1 100644 --- a/src/backend/utils/error/elog.c +++ b/src/backend/utils/error/elog.c @@ -42,7 +42,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/error/elog.c,v 1.199 2007/12/11 15:19:05 alvherre Exp $ + * $PostgreSQL: pgsql/src/backend/utils/error/elog.c,v 1.200 2007/12/11 20:07:31 alvherre Exp $ * *------------------------------------------------------------------------- */ @@ -1667,7 +1667,6 @@ write_csvlog(ErrorData *edata) initStringInfo(&buf); - /* * timestamp with milliseconds * @@ -1715,8 +1714,9 @@ write_csvlog(ErrorData *edata) appendCSVLiteral(&buf, MyProcPort->database_name); appendStringInfoChar(&buf, ','); - /* session id */ - appendStringInfo(&buf, "%lx.%x", (long) MyStartTime, MyProcPid); + /* Process id */ + if (MyProcPid != 0) + appendStringInfo(&buf, "%d", MyProcPid); appendStringInfoChar(&buf, ','); /* Remote host and port */ @@ -1730,9 +1730,8 @@ write_csvlog(ErrorData *edata) } appendStringInfoChar(&buf, ','); - /* Process id */ - if (MyProcPid != 0) - appendStringInfo(&buf, "%d", MyProcPid); + /* session id */ + appendStringInfo(&buf, "%lx.%x", (long) MyStartTime, MyProcPid); appendStringInfoChar(&buf, ','); /* Line number */