mahara-contributors team mailing list archive
-
mahara-contributors team
-
Mailing list archive
-
Message #30831
[Bug 1509351] Re: MySQL binlog_format preventing install
Hi Kevin,
We recently changed how we do transactions in mahara to avoid deadlock
issues, see https://bugs.launchpad.net/mahara/+bug/1492919
The fix for that looks to be causing your problem, which is: Statement
based binlogging does not work in isolation level READ UNCOMMITTED and
READ COMMITTED since the necessary locks cannot be taken.
The recommended fix for this is exactly what you have done, to change
the BINLOG_FORMAT variable to MIXED. This allows MySQL to automatically
switch between ROW and STATEMENT based logging as required.
For others who stumble upon this:
To change to row based binary logging, set the following in /etc/my.cnf (or your my.cnf if it's elsewhere):
binlog_format=row
Cheers
Robert
--
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1509351
Title:
MySQL binlog_format preventing install
Status in Mahara:
New
Bug description:
Mahara version 15.10.0
Centos
MySQL/MariaDB
Hi,
I tried to install 15.10 on my dev server today and it didn't complete
the DB setup.
The logs had the following message:
[WAR] e3 (lib/dml.php:933) Failed to get a recordset: mysqli error:
[1665: Cannot execute statement: impossible to write to binary log
since BINLOG_FORMAT = STATEMENT and at least one table uses a storage
engine limited to row-based logging. InnoDB is limited to row-logging
when transaction isolation level is READ COMMITTED or READ
UNCOMMITTED.] in EXECUTE("DELETE FROM "config" WHERE "field" =
'_upgrade' "), referer: http://a.website.co.uk/admin/upgrade.php
It installed fine once I'd I changed the BINLOG_FORMAT to MIXED first
of all by using the following commands :
SET GLOBAL binlog_format=MIXED;
SET SESSION binlog_format=MIXED;
SET binlog_format=MIXED;
I've now set it permanently in the my.cnf by adding
binlog_format=MIXED
I assume binlog_format=STATEMENT is the default as I've never set it
before and my other servers are set to STATEMENT
I think that I installed a development version of 15.10 previously
without this issue, my memory on that is not clear though.
I guess the questions are:
Can the pre-install check test for this?
Is this an issue once Mahara is actually running or only on install?
If it is only on install can the the commands above be used to changed the binlog_format during install and then set it back?
(I was using a privileged MySQL when the commands were issued so I don't know if they can be run by a user set up to access the Mahara db)
Kevin
To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1509351/+subscriptions
References