commit ineffective with AutoCommit enabled... MailWatch.pm

Bertrand Poulet bertrand.poulet at pasteur-lille.fr
Fri Apr 18 15:53:04 IST 2008


/
/>>/
/>>/ having error message on starting MailScanner (4.68.8-1) with MailWatch:
/>>/  # /etc/init.d/MailScanner restart
/>>/   Shutting down MailScanner daemons:
/>>/         MailScanner:       commit ineffective with AutoCommit enabled
/>>/         at 
/>>/ /usr/lib/MailScanner/MailScanner/CustomFunctions/MailWatch.pm line 93,
/>>/         <CLIENT> line 1.
/>>/
/>>/ i've read about same problem on mailing list :
/>>/ http://lists.mailscanner.info/pipermail/mailscanner/2007-August/077492.html 
/>>/ (disabling autocommit)
/>>/ http://lists.mailscanner.info/pipermail/mailscanner/2008-April/083596.html 
/>>/ (automatic syntax check = no )
/>>/
/>>/ and tried to disabled autocommit.
/>>/  [root at host1 <http://lists.mailscanner.info/mailman/listinfo/mailscanner> ~]#  mysql mailscanner -u user -p
/>>/   mysql> select @@autocommit ;
/>>/    @@autocommit ->    1
/>>/
/>>/
/>>/ so i changed in /etc/my.cnf
/>>/   [mysqld]
/>>/   init_connect='SET autocommit=0'
/>>/
/>>/ and then
/>>/   mysql> select @@autocommit ;
/>>/    @@autocommit ->    0
/>>/
/>>/
/>>/ but still got the error message 'commit ineffective with AutoCommit 
/>>/ enabled...'
/>>/ maybe, because of "the statements specified for the init_connect 
/>>/ option are not executed for users
/>>/  that have the SUPER privilege"
/>>/
/>>/ any idea to solve this issue ?
/>>/ maybe something like giving 'Autocommit' value when connecting to DB 
/>>/ in MailWatch.pm and
/>>/ then leave 'automatic syntax check = yes' ?
/>>/
/>>/ Regards,
/>>/ Gwo.
/>>/
/>>/
/>>/
/>/ Its a just awarning, don't worry about it...unless of course you've 
/>/ got too much time on your hands  ;-)
/Any ideas of something I could do in MailScanner to stop MailWatch 
generating this error? If it's an easy thing to stop, I'm quite prepared 
to add it, as it would stop a significant number of support requests.


More likely, in mailwatch, setting Autocommit value ?
The |connect()| method can take a hash of options. 
Often-used options include: |AutoCommit|, which when true or false will 
automatically or not commit database transactions; ||


my $dbh = DBI->connect( 'dbi:mysql:<database name>:<server>',
                        'username','password',
                        {
                          AutoCommit => 0
                        }
                      ) ;

    




More information about the MailScanner mailing list