summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FS/bin/freeside-torrus-srvderive6
-rw-r--r--torrus/perllib/Torrus/Collector/ExtDBI.pm8
2 files changed, 11 insertions, 3 deletions
diff --git a/FS/bin/freeside-torrus-srvderive b/FS/bin/freeside-torrus-srvderive
index e8626e10d..a02d23ea0 100644
--- a/FS/bin/freeside-torrus-srvderive
+++ b/FS/bin/freeside-torrus-srvderive
@@ -102,8 +102,10 @@ while (1) {
exit unless @serviceids; #don't try to search for empty virtual ports
#nonlocking select statements; rows in this table never change
- dbh->do('SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED')
- if driver_name eq 'mysql';
+ if ( driver_name eq 'mysql' ) {
+ dbh->do('SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED');
+ dbh->commit or die dbh->errstr;
+ }
my @in = ();
for my $dir ('_IN', '_OUT') {
diff --git a/torrus/perllib/Torrus/Collector/ExtDBI.pm b/torrus/perllib/Torrus/Collector/ExtDBI.pm
index 7d1394191..a4fe4fc75 100644
--- a/torrus/perllib/Torrus/Collector/ExtDBI.pm
+++ b/torrus/perllib/Torrus/Collector/ExtDBI.pm
@@ -14,7 +14,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
-# $Id: ExtDBI.pm,v 1.1 2010-12-27 00:03:58 ivan Exp $
+# $Id: ExtDBI.pm,v 1.2 2011-04-29 01:13:20 ivan Exp $
# Stanislav Sinyagin <ssinyagin@yahoo.com>
## Pluggable backend module for ExternalStorage
@@ -63,6 +63,12 @@ sub backendOpenSession
if( defined( $dbh ) )
{
+
+ if ( $dbh->{Driver}->{Name} =~ /^mysql/i ) {
+ $dbh->do('SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED');
+ $dbh->commit();
+ }
+
$sth = $dbh->prepare( Torrus::SQL::SrvExport->sqlInsertStatement() );
if( not defined( $sth ) )
{