Mutant
Mutant

Reputation: 3821

Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.

Getting below error when try to insert values from django admin screen -

Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
Request Method: POST
Request URL:    *<My URL>*
Django Version: 1.3.1
Exception Type: Warning
Exception Value:    
Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction.
Exception Location: /Library/<Application>/2.7/site-packages/MySQLdb/cursors.py in _warning_check, line 92
Python Executable:  /usr/bin/python
Python Version: 2.7.1

I tried reading on web, however couldn't get proper fix for the problem. Any help?

Upvotes: 3

Views: 11557

Answers (1)

Mutant
Mutant

Reputation: 3821

Figured the issue and resolved it. It was because of not all tables were created under the same Engine(new tables were under 'InnoDB' because of mysql 5.5 and old tables were under 'MyISAM' because of mysql 5.0).

Here is the detail explanation - http://generics7.blogspot.com/2012/08/unsafe-statement-written-to-binary-log.html

After creating all tables under same Engine, it works fine!

Upvotes: 3

Related Questions