Author: REHSACK
Date: Tue Nov 20 01:08:15 2012
New Revision: 15481
Modified:
dbi/branches/sqlengine/ (props changed)
dbi/branches/sqlengine/Changes
dbi/branches/sqlengine/DBI.pm
dbi/branches/sqlengine/DBI.xs
dbi/branches/sqlengine/lib/DBD/Proxy.pm
Log:
merge from trunk (r15472 through r15480)
Modified: dbi/branches/sqlengine/Changes
==============================================================================
--- dbi/branches/sqlengine/Changes (original)
+++ dbi/branches/sqlengine/Changes Tue Nov 20 01:08:15 2012
@@ -8,25 +8,31 @@
=cut
-=head2 Changes in DBI 1.623
+=head2 Changes in DBI 1.623 (svn r15467) 19th Nov 2012
- Fix RT#72343 and add patches for it (Martin Evans, Jens Rehsack)
- Fix RT#64330 - ping wipes out errstr.
- Removed _not_impl (Martin J. Evans).
+ Fixed RT#64330 - ping wipes out errstr (Martin J. Evans).
+ Fixed RT#80474 - segfault in DESTROY with threads.
+ Fixed RT#75868 - DBD::Proxy shouldn't call connected() on the server.
Fixed unused variable / self-assignment compiler warnings.
Corrected typo in DBI->installed_versions docs RT#78825
thanks to Jan Dubois.
+ Corrected a spelling error thanks to Chris Sanders.
Refactored table meta information management from DBD::File into
DBI::DBD::SqlEngine (H.Merijn Brand, Jens Rehsack)
Pevent undefined f_dir being used in opendir (H.Merijn Brand)
Added logic to force destruction of children before parents
- during global destruction. Currently experimental.
+ during global destruction. Currently experimental. See RT#75614.
Added DBD::File Plugin-Support for table names and data sources
(Jens Rehsack, #dbi Team)
Added new tests to 08keeperr for RT#64330
- thanks to Kenichi Ishigaki.
+ thanks to Kenichi Ishigaki.
+ Added extra internal handle type check, RT#79952
+ thanks to Reini Urban.
+ Added cubrid_ registered prefix for DBD::cubrid, RT#78453
+
+ Removed internal _not_impl method (Martin J. Evans).
=head2 Changes in DBI 1.622 (svn r15327) 6th June 2012
Modified: dbi/branches/sqlengine/DBI.pm
==============================================================================
--- dbi/branches/sqlengine/DBI.pm (original)
+++ dbi/branches/sqlengine/DBI.pm Tue Nov 20 01:08:15 2012
@@ -314,6 +314,7 @@
amzn_ => { class => 'DBD::Amazon', },
best_ => { class => 'DBD::BestWins', },
csv_ => { class => 'DBD::CSV', },
+ cubrid_ => { class => 'DBD::cubrid', },
db2_ => { class => 'DBD::DB2', },
dbi_ => { class => 'DBI', },
dbm_ => { class => 'DBD::DBM', },
Modified: dbi/branches/sqlengine/DBI.xs
==============================================================================
--- dbi/branches/sqlengine/DBI.xs (original)
+++ dbi/branches/sqlengine/DBI.xs Tue Nov 20 01:08:15 2012
@@ -1494,6 +1494,8 @@
break;
}
}
+ else
+ die("panic: invalid DBIc_TYPE");
/* Use DBI magic on inner handle to carry handle attributes */
/* Note that we store the imp_sv in mg_obj, but as a shortcut, */
@@ -3265,15 +3267,6 @@
profile_t1 = dbi_time(); /* just get start time here */
}
- if ((i = DBIc_DEBUGIV(imp_xxh))) { /* merge handle into global */
- I32 h_trace_level = (i & DBIc_TRACE_LEVEL_MASK);
- if ( h_trace_level > trace_level )
- trace_level = h_trace_level;
- trace_flags = (trace_flags & ~DBIc_TRACE_LEVEL_MASK)
- | ( i & ~DBIc_TRACE_LEVEL_MASK)
- | trace_level;
- }
-
#ifdef DBI_USE_THREADS
{
PerlInterpreter * h_perl;
@@ -3298,6 +3291,15 @@
}
#endif
+ if ((i = DBIc_DEBUGIV(imp_xxh))) { /* merge handle into global */
+ I32 h_trace_level = (i & DBIc_TRACE_LEVEL_MASK);
+ if ( h_trace_level > trace_level )
+ trace_level = h_trace_level;
+ trace_flags = (trace_flags & ~DBIc_TRACE_LEVEL_MASK)
+ | ( i & ~DBIc_TRACE_LEVEL_MASK)
+ | trace_level;
+ }
+
/* Check method call against Internal Method Attributes */
if (ima_flags) {
Modified: dbi/branches/sqlengine/lib/DBD/Proxy.pm
==============================================================================
--- dbi/branches/sqlengine/lib/DBD/Proxy.pm (original)
+++ dbi/branches/sqlengine/lib/DBD/Proxy.pm Tue Nov 20 01:08:15 2012
@@ -229,11 +229,9 @@
# in a way that might not be visible on the client, ie begin_work ->
AutoCommit.
sub commit;
-sub connected;
sub rollback;
sub ping;
-
use vars qw(%ATTR $AUTOLOAD);
# inherited: STORE / FETCH against this class.
@@ -295,6 +293,9 @@
$dbh->disconnect if $dbh->SUPER::FETCH('Active');
}
+
+sub connected { } # client-side not server-side, RT#75868
+
sub disconnect ($) {
my ($dbh) = @_;