This patch makes a great deal of changes in the structure :
- parser is now a line factory
- one accumulator for both pg/syslog (might be common with MySQL's)
- 2 parsers for syslog and pglog, but inheriting from a common pg parser
- one line object class by line type
- a LogStreamer, that follows pids and manage a query stack for dealing with contexts
- Accumulator is now linked to LogStreamer,
It solves/adds/modify/breaks those :
- Factorized Both PG parsers
- solves bug 1000211 "PQA 1.4, PG 8.0 incompatibility" (works on the attached sample)
- should solve bug 1000006 "PG log line continuations are sometimes skipped" (as r1.76 should)
- seems to solve bug 1000201 "./pga.rb:521:in cannot convert nil into Float (TypeError)" : tested on attached log : works.
- include patch equivalent to Patch 1000226 "Tracking pid in PGlog"
- adds feature request 1000189 "option to parse query info out of duration line"
- breaks MySQL support : need to create MySQLLine classes and parser
- Added framework for a future SQL error report.
pqa.rb (r1.78 -> r1.79)
pgsql-committers by date
|Next:||From: User Tfavier||Date: 2005-01-27 22:34:35|
|Subject: pqa - pqa: Fix Typo Minor correction for ruby 1.8|
|Previous:||From: Tom Lane||Date: 2005-01-27 21:50:26|
|Subject: pgsql: Now that I look at it, int_array_enum() didn't work either.|