Re: [ADMIN] Config option log_statement

Поиск
Список
Период
Сортировка
Искать
От
Bruce Momjian
Тема
Re: [ADMIN] Config option log_statement
Дата
Msg-id
200506012328.j51NS1n17362@candle.pha.pa.us
Ответ на
Config option log_statement (S Murthy Kambhampaty)
Список

Fix applied.  It will appear in 8.0.X.  Patch attached.

---------------------------------------------------------------------------

S Murthy Kambhampaty wrote:
> In postgresql 8.0, "create table <> as ..." statements
> appear not to logged unless log_statement = 'all' in
> postgresql.conf.  We are trying to reduce noise in the
> logs from pgAdminIII and phpPgAdmin, but we use a lot
> of 'create table <> as ...' queries that need to be
> logged, and their duration tracked.  Is there a
> combination of settings that will do the trick?  Can
> postgresql be upgraded to log "create table <> as ..."
> statements with log_statment = 'ddl' and/or
> log_statment = 'mod'?
> 
> Thanks,
>    Murthy
> 
> 
> 		
> __________________________________ 
> Yahoo! Mail Mobile 
> Take Yahoo! Mail with you! Check email on your mobile phone. 
> http://mobile.yahoo.com/learn/mail 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
Index: src/backend/tcop/postgres.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/tcop/postgres.c,v
retrieving revision 1.440
diff -c -c -r1.440 postgres.c
*** src/backend/tcop/postgres.c	31 Dec 2004 22:01:16 -0000	1.440
--- src/backend/tcop/postgres.c	1 Jun 2005 23:24:09 -0000
***************
*** 495,501 ****
  			if (IsA(parsetree, PrepareStmt))
  				parsetree = (Node *) (((PrepareStmt *) parsetree)->query);
  
! 			if (IsA(parsetree, SelectStmt))
  				continue;		/* optimization for frequent command */
  
  			if (log_statement == LOGSTMT_MOD &&
--- 495,502 ----
  			if (IsA(parsetree, PrepareStmt))
  				parsetree = (Node *) (((PrepareStmt *) parsetree)->query);
  
! 			if (IsA(parsetree, SelectStmt) &&
! 				((SelectStmt *) parsetree)->into == NULL)
  				continue;		/* optimization for frequent command */
  
  			if (log_statement == LOGSTMT_MOD &&
***************
*** 513,518 ****
--- 514,520 ----
  			}
  			commandTag = CreateCommandTag(parsetree);
  			if (strncmp(commandTag, "CREATE ", strlen("CREATE ")) == 0 ||
+ 				IsA(parsetree, SelectStmt) || /* SELECT INTO, CREATE AS */
  				strncmp(commandTag, "ALTER ", strlen("ALTER ")) == 0 ||
  				strncmp(commandTag, "DROP ", strlen("DROP ")) == 0 ||
  				IsA(parsetree, GrantStmt) ||	/* GRANT or REVOKE */
В списке pgsql-patches по дате отправления
От: Andreas Pflug
Дата:
От: Alon Goldshuv
Дата:
Сообщение: COPY fast parse patch
FAQ