Make CSV column ordering a bit more logical.
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Tue, 11 Dec 2007 20:07:31 +0000 (20:07 +0000)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Tue, 11 Dec 2007 20:07:31 +0000 (20:07 +0000)
doc/src/sgml/config.sgml
src/backend/utils/error/elog.c

index 2dc1f64ed680f6109a5f4f698120516c83c8cf21..6afbfc38d68fcdd1e43a3cda408c1f01834936d5 100644 (file)
@@ -3001,7 +3001,7 @@ local0.*    /var/log/postgresql
             </row>
             <row>
              <entry><literal>%l</literal></entry>
-             <entry>Number of the log line for each process, starting at 1</entry>
+             <entry>Number of the log line for each session or process, starting at 1</entry>
              <entry>no</entry>
             </row>
             <row>
@@ -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
 <programlisting>
 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)
 );
 </programlisting>
        </para>
index cb96d686fe9bc8c003c6e44c44c18e361fa416a5..2b6b869f8f97e08ab5bb3d9d62a0a4210fb95168 100644 (file)
@@ -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 */