Author: timbo
Date: Mon Jun 16 07:56:22 2008
New Revision: 11425
Modified:
dbi/trunk/Changes
dbi/trunk/lib/DBI/Gofer/Transport/Base.pm
Log:
Gofer transport trace changes:
Trace messages have 'gofer ' prefix.
Trace level 1 shows one-line outline of request and responses (much more
compact then before).
Trace level 2 & 3 shows short summary, and level >=4 do full dump.
Modified: dbi/trunk/Changes
==============================================================================
--- dbi/trunk/Changes (original)
+++ dbi/trunk/Changes Mon Jun 16 07:56:22 2008
@@ -66,11 +66,13 @@
Fixed DBI::PurePerl neat() to behave more like XS neat().
Clarified docs re ":N" style placeholders.
+ Changed the format of the key used for $h->{CachedKids}
+ (which is undocumented so you shouldn't depend on it anyway)
Increased timeout on tests to accomodate very slow systems.
+ Improved gofer trace output in assorted ways.
+
Removed the beeps "\a" from Makefile.PL warnings.
Removed check for PlRPC-modules from Makefile.PL
- Changed the format of the key used for $h->{CachedKids}
- (which is undocumented so you shouldn't depend on it anyway)
Added sorting of ParamValues reported by ShowErrorStatement
thanks to to Rudolf Lippan.
Modified: dbi/trunk/lib/DBI/Gofer/Transport/Base.pm
==============================================================================
--- dbi/trunk/lib/DBI/Gofer/Transport/Base.pm (original)
+++ dbi/trunk/lib/DBI/Gofer/Transport/Base.pm Mon Jun 16 07:56:22 2008
@@ -116,7 +116,9 @@
# don't dump the binary
local $data->{meta}{frozen} if $data->{meta} && $data->{meta}{frozen};
- if ($self->trace >= 2) {
+ my $trace_level = $self->trace;
+ my $summary;
+ if ($trace_level >= 4) {
require Data::Dumper;
local $Data::Dumper::Indent = 1;
local $Data::Dumper::Terse = 1;
@@ -125,12 +127,15 @@
local $Data::Dumper::Quotekeys = 0;
local $Data::Dumper::Deparse = 0;
local $Data::Dumper::Purity = 0;
- $self->trace_msg("$label: ".Data::Dumper::Dumper($data));
+ $summary = Data::Dumper::Dumper($data);
+ }
+ elsif ($trace_level >= 2) {
+ $summary = eval { $data->summary_as_text } || $@ || "no summary
available\n";
}
else {
- my $summary = eval { $data->summary_as_text } || $@ || "no summary
available\n";
- $self->trace_msg("$label: $summary");
+ $summary = eval { $data->outline_as_text."\n" } || $@ || "no summary
available\n";
}
+ $self->trace_msg("$label: $summary");
}
@@ -139,7 +144,7 @@
$min_level = 1 unless defined $min_level;
# transport trace level can override DBI's trace level
$min_level = 0 if $self->trace >= $min_level;
- return DBI->trace_msg($msg, $min_level);
+ return DBI->trace_msg("gofer ".$msg, $min_level);
}
1;