Re: [ADMIN] Config option log_statement
От | Bruce Momjian |
---|---|
Тема | Re: [ADMIN] Config option log_statement |
Дата | |
Msg-id | 200506012328.j51NS1n17362@candle.pha.pa.us обсуждение исходный текст |
Список | pgsql-patches |
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 по дате отправления: