Author: spadkins
Date: Tue Dec 1 08:53:17 2009
New Revision: 13622
Modified:
p5ee/trunk/App-Repository/lib/App/Repository/DBI.pm
Log:
add support for --debug_sql_min_time and --debug_sql_regex
Modified: p5ee/trunk/App-Repository/lib/App/Repository/DBI.pm
==============================================================================
--- p5ee/trunk/App-Repository/lib/App/Repository/DBI.pm (original)
+++ p5ee/trunk/App-Repository/lib/App/Repository/DBI.pm Tue Dec 1 08:53:17 2009
@@ -418,11 +418,15 @@
my $context_options = $context->{options};
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
- my ($timer, $elapsed_time);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex);
if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: _get_row()\n";
- print $App::DEBUG_FILE $sql;
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _get_row()\n";
+ print $App::DEBUG_FILE $sql;
+ }
}
if ($context_options->{explain_sql}) {
$self->explain_sql($sql);
@@ -476,11 +480,17 @@
}
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
- print $App::DEBUG_FILE "DEBUG_SQL: nrows [$nrows] ($elapsed_time sec)
$DBI::errstr\n";
- if ($debug_sql >= 2) {
- print $App::DEBUG_FILE "DEBUG_SQL: [", ($row ? join("|",map {
defined $_ ? $_ : "undef" } @$row) : ""), "]\n";
+ if ($debug_sql_min_time && $elapsed_time >= $debug_sql_min_time &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _get_row()\n";
+ print $App::DEBUG_FILE $sql;
+ }
+ if ((!$debug_sql_min_time || $elapsed_time >= $debug_sql_min_time) &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: nrows [$nrows] ($elapsed_time
sec) $DBI::errstr\n";
+ if ($debug_sql >= 2) {
+ print $App::DEBUG_FILE "DEBUG_SQL: [", ($row ? join("|",map {
defined $_ ? $_ : "undef" } @$row) : ""), "]\n";
+ }
+ print $App::DEBUG_FILE "\n";
}
- print $App::DEBUG_FILE "\n";
}
&App::sub_exit($row) if ($App::trace);
@@ -514,11 +524,15 @@
my $context_options = $context->{options};
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
- my ($timer, $elapsed_time);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex);
if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: _get_rows()\n";
- print $App::DEBUG_FILE $sql;
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _get_rows()\n";
+ print $App::DEBUG_FILE $sql;
+ }
}
if ($context_options->{explain_sql}) {
$self->explain_sql($sql);
@@ -572,13 +586,19 @@
}
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
- print $App::DEBUG_FILE "DEBUG_SQL: nrows [$nrows] ($elapsed_time sec)
$DBI::errstr\n";
- if ($debug_sql >= 2) {
- foreach my $row (@$rows) {
- print $App::DEBUG_FILE "DEBUG_SQL: [", join("|",map { defined
$_ ? $_ : "undef"} @$row), "]\n";
+ if ($debug_sql_min_time && $elapsed_time >= $debug_sql_min_time &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _get_rows()\n";
+ print $App::DEBUG_FILE $sql;
+ }
+ if ((!$debug_sql_min_time || $elapsed_time >= $debug_sql_min_time) &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: nrows [$nrows] ($elapsed_time
sec) $DBI::errstr\n";
+ if ($debug_sql >= 2) {
+ foreach my $row (@$rows) {
+ print $App::DEBUG_FILE "DEBUG_SQL: [", join("|",map {
defined $_ ? $_ : "undef"} @$row), "]\n";
+ }
}
+ print $App::DEBUG_FILE "\n";
}
- print $App::DEBUG_FILE "\n";
}
&App::sub_exit($rows) if ($App::trace);
@@ -2046,7 +2066,7 @@
my $context_options = $context->{options};
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
- my ($timer, $elapsed_time, $bind_values);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex,
$bind_values);
my $loglevel = 1;
if ($context_options->{explain_sql}) {
$self->explain_sql($sql);
@@ -2058,10 +2078,14 @@
my ($column, %serializer, $serializer_name, $serializer, $type,
$sqltype);
my $column_defs = $self->{table}{$table}{column};
if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: insert()\n";
- print $App::DEBUG_FILE "DEBUG_SQL: bind vars [", join("|",map {
defined $_ ? $_ : "undef" } @$row), "]\n";
- print $App::DEBUG_FILE $sql;
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: insert()\n";
+ print $App::DEBUG_FILE "DEBUG_SQL: bind vars [", join("|",map
{ defined $_ ? $_ : "undef" } @$row), "]\n";
+ print $App::DEBUG_FILE $sql;
+ }
}
eval {
my $insert_sth = $dbh->prepare($sql);
@@ -2133,8 +2157,15 @@
}
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
- print $App::DEBUG_FILE "DEBUG_SQL: nrows [$nrows] ($elapsed_time sec)
$DBI::errstr\n";
- print $App::DEBUG_FILE "\n";
+ if ($debug_sql_min_time && $elapsed_time >= $debug_sql_min_time &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: insert()\n";
+ print $App::DEBUG_FILE "DEBUG_SQL: bind vars [", join("|",map {
defined $_ ? $_ : "undef" } @$row), "]\n";
+ print $App::DEBUG_FILE $sql;
+ }
+ if ((!$debug_sql_min_time || $elapsed_time >= $debug_sql_min_time) &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: nrows [$nrows] ($elapsed_time
sec) $DBI::errstr\n";
+ print $App::DEBUG_FILE "\n";
+ }
}
&App::sub_exit($nrows) if ($App::trace);
@@ -2157,9 +2188,11 @@
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
my $explain_sql = $context_options->{explain_sql};
- my ($timer, $elapsed_time, $bind_values, $row);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex,
$bind_values, $row);
my $loglevel = 1;
if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
$timer = $self->_get_timer();
}
if ($profiler) {
@@ -2297,11 +2330,15 @@
my $context_options = $context->{options};
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
- my ($timer, $elapsed_time);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex);
if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: _delete()\n";
- print $App::DEBUG_FILE $sql;
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _delete()\n";
+ print $App::DEBUG_FILE $sql;
+ }
}
if ($context_options->{explain_sql}) {
$self->explain_sql($sql);
@@ -2328,8 +2365,14 @@
}
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
- print $App::DEBUG_FILE "DEBUG_SQL: retval [$retval] ($elapsed_time
sec) $DBI::errstr\n";
- print $App::DEBUG_FILE "\n";
+ if ($debug_sql_min_time && $elapsed_time >= $debug_sql_min_time &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _delete()\n";
+ print $App::DEBUG_FILE $sql;
+ }
+ if ((!$debug_sql_min_time || $elapsed_time >= $debug_sql_min_time) &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: retval [$retval] ($elapsed_time
sec) $DBI::errstr\n";
+ print $App::DEBUG_FILE "\n";
+ }
}
&App::sub_exit($retval) if ($App::trace);
@@ -2361,7 +2404,11 @@
my $context_options = $context->{options};
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
- my ($timer, $elapsed_time);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex);
+ if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
+ }
if ($context_options->{explain_sql}) {
$self->explain_sql($sql);
}
@@ -2377,8 +2424,10 @@
if ($by_expression) {
if ($debug_sql) {
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: _update() :
by_expression\n";
- print $App::DEBUG_FILE $sql;
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _update() :
by_expression\n";
+ print $App::DEBUG_FILE $sql;
+ }
}
$retval = $dbh->do($sql);
}
@@ -2409,9 +2458,11 @@
}
if ($debug_sql) {
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: _update()\n";
- print $App::DEBUG_FILE "DEBUG_SQL: bind vars [",
join("|",map { defined $_ ? $_ : "undef" } @$row), "]\n";
- print $App::DEBUG_FILE $sql;
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _update()\n";
+ print $App::DEBUG_FILE "DEBUG_SQL: bind vars [",
join("|",map { defined $_ ? $_ : "undef" } @$row), "]\n";
+ print $App::DEBUG_FILE $sql;
+ }
}
$retval = $update_sth->execute(@$row);
}
@@ -2431,8 +2482,15 @@
}
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
- print $App::DEBUG_FILE "DEBUG_SQL: retval [$retval] ($elapsed_time
sec) $DBI::errstr\n";
- print $App::DEBUG_FILE "\n";
+ if ($debug_sql_min_time && $elapsed_time >= $debug_sql_min_time &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _update()\n";
+ print $App::DEBUG_FILE "DEBUG_SQL: bind vars [", join("|",map {
defined $_ ? $_ : "undef" } @$row), "]\n";
+ print $App::DEBUG_FILE $sql;
+ }
+ if ((!$debug_sql_min_time || $elapsed_time >= $debug_sql_min_time) &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: retval [$retval] ($elapsed_time
sec) $DBI::errstr\n";
+ print $App::DEBUG_FILE "\n";
+ }
}
&App::sub_exit($retval) if ($App::trace);
@@ -2451,11 +2509,15 @@
my $context_options = $context->{options};
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
- my ($timer, $elapsed_time);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex);
if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: _delete_row()\n";
- print $App::DEBUG_FILE $sql;
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _delete_row()\n";
+ print $App::DEBUG_FILE $sql;
+ }
}
if ($context_options->{explain_sql}) {
$self->explain_sql($sql);
@@ -2482,8 +2544,14 @@
}
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
- print $App::DEBUG_FILE "DEBUG_SQL: retval [$retval] ($elapsed_time
sec) $DBI::errstr\n";
- print $App::DEBUG_FILE "\n";
+ if ($debug_sql_min_time && $elapsed_time >= $debug_sql_min_time &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _delete_row()\n";
+ print $App::DEBUG_FILE $sql;
+ }
+ if ((!$debug_sql_min_time || $elapsed_time >= $debug_sql_min_time) &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: retval [$retval] ($elapsed_time
sec) $DBI::errstr\n";
+ print $App::DEBUG_FILE "\n";
+ }
}
&App::sub_exit($retval) if ($App::trace);
@@ -2502,11 +2570,15 @@
my $context_options = $context->{options};
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
- my ($timer, $elapsed_time);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex);
if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: _delete_rows()\n";
- print $App::DEBUG_FILE $sql;
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _delete_rows()\n";
+ print $App::DEBUG_FILE $sql;
+ }
}
if ($context_options->{explain_sql}) {
$self->explain_sql($sql);
@@ -2534,8 +2606,14 @@
}
if ($debug_sql) {
$elapsed_time = $self->_read_timer($timer);
- print $App::DEBUG_FILE "DEBUG_SQL: retval [$retval] ($elapsed_time
sec) $DBI::errstr\n";
- print $App::DEBUG_FILE "\n";
+ if ($debug_sql_min_time && $elapsed_time >= $debug_sql_min_time &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _delete_rows()\n";
+ print $App::DEBUG_FILE $sql;
+ }
+ if ((!$debug_sql_min_time || $elapsed_time >= $debug_sql_min_time) &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: retval [$retval] ($elapsed_time
sec) $DBI::errstr\n";
+ print $App::DEBUG_FILE "\n";
+ }
}
&App::sub_exit($retval) if ($App::trace);
@@ -2554,12 +2632,16 @@
my $context_options = $context->{options};
my $debug_sql = $context_options->{debug_sql};
my $profiler = $context_options->{"app.Context.profiler"};
- my ($timer, $elapsed_time);
+ my ($timer, $elapsed_time, $debug_sql_min_time, $debug_sql_regex);
if ($debug_sql) {
+ $debug_sql_min_time = $context_options->{debug_sql_min_time};
+ $debug_sql_regex = $context_options->{debug_sql_regex};
$timer = $self->_get_timer();
- print $App::DEBUG_FILE "DEBUG_SQL: _do()\n";
- print $App::DEBUG_FILE $sql;
- print $App::DEBUG_FILE "\n" if ($sql !~ /\n$/);
+ if (! $debug_sql_min_time && (!$debug_sql_regex || $sql =~
/$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _do()\n";
+ print $App::DEBUG_FILE $sql;
+ print $App::DEBUG_FILE "\n" if ($sql !~ /\n$/);
+ }
}
if ($context_options->{explain_sql}) {
$self->explain_sql($sql);
@@ -2624,13 +2706,20 @@
}
}
$elapsed_time = $self->_read_timer($timer);
- print $App::DEBUG_FILE "DEBUG_SQL: nrows [$nrows] ($elapsed_time sec)
$DBI::errstr\n";
- if ($debug_sql >= 2 && ref($retval)) {
- foreach my $row (@$retval) {
- print $App::DEBUG_FILE "DEBUG_SQL: [", join("|",map { defined
$_ ? $_ : "undef"} @$row), "]\n";
+ if ($debug_sql_min_time && $elapsed_time >= $debug_sql_min_time &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: _do()\n";
+ print $App::DEBUG_FILE $sql;
+ print $App::DEBUG_FILE "\n" if ($sql !~ /\n$/);
+ }
+ if ((!$debug_sql_min_time || $elapsed_time >= $debug_sql_min_time) &&
(!$debug_sql_regex || $sql =~ /$debug_sql_regex/s)) {
+ print $App::DEBUG_FILE "DEBUG_SQL: nrows [$nrows] ($elapsed_time
sec) $DBI::errstr\n";
+ if ($debug_sql >= 2 && ref($retval)) {
+ foreach my $row (@$retval) {
+ print $App::DEBUG_FILE "DEBUG_SQL: [", join("|",map {
defined $_ ? $_ : "undef"} @$row), "]\n";
+ }
}
+ print $App::DEBUG_FILE "\n";
}
- print $App::DEBUG_FILE "\n";
}
&App::sub_exit($retval) if ($App::trace);