Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

MySQL i translation isolation level problem

[es] :: MySQL :: MySQL i translation isolation level problem

[ Pregleda: 1999 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bjevta
Bratislav Jevtic
http://www.tojesoft.co.rs
Beograd

Član broj: 5216
Poruke: 367
*.static.sbb.rs.

Sajt: www.tojesoft.co.rs


+5 Profil

icon MySQL i translation isolation level problem07.09.2011. u 17:43 - pre 152 meseci
Problem je exception:

org.springframework.dao.DataAccessResourceFailureException: Could not obtain last_insert_id(); nested exception is java.sql.SQLException: Binary logging not possible. Message: Transaction level 'READ-UNCOMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT'

1. je l iko ima pojma zasto bi ovo moglo da se javi?

2. da li default transaction isolation level moze da se setuje per database (innodb), a ne za ceo innodb?

3. kako da vidim koji je default transaction isolation level za datu bazu?

unapred fala.
Acta, non verba!
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: MySQL i translation isolation level problem07.09.2011. u 22:47 - pre 152 meseci
Citat:
bjevta
Transaction level 'READ-UNCOMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT'

1. je l iko ima pojma zasto bi ovo moglo da se javi?


?! zato sto si odabrao read-uncommitted a binlog ti je tipa statement. Ili prebaci da ti binlog format bude raw ili odaberi neki drugi transaction level. MySQL nema sve tekstove gresaka idealno napisane, ali stvarno ne znam sta je ovde moglo da bude nejasno ?!

Citat:

2. da li default transaction isolation level moze da se setuje per database (innodb), a ne za ceo innodb?


NE. default je za ceo server. Ti mozes da ga menjas u toku sesije koliko hoces puta.

Citat:

3. kako da vidim koji je default transaction isolation level za datu bazu?


Transaction level je po SESIJI, ne po BAZI - ne moze drugacije.

za trenutnu sesiju:

Code:

show variables like 'tx_isolation';


default:
Code:

show global variables like 'tx_isolation';



 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: MySQL i translation isolation level problem07.09.2011. u 22:49 - pre 152 meseci
btw u MySQL-u skoro nista ne moze da se setuje "po bazi", sve je vezano samo za sesiju ili globalno za ceo server
 
Odgovor na temu

bjevta
Bratislav Jevtic
http://www.tojesoft.co.rs
Beograd

Član broj: 5216
Poruke: 367
*.static.sbb.rs.

Sajt: www.tojesoft.co.rs


+5 Profil

icon Re: MySQL i translation isolation level problem08.09.2011. u 08:35 - pre 152 meseci
bogdane, fala puno.

ti decaci su cackali po MySQL-u zbog problema s konkurentnosti u radu neke aplikacije. Setovali su transaction isolation level na READ-UNCOMMITTED, desio im se zbrlj, onda su vratili na REPEATABLE READ (sve to u my.cnf). Tako bar kazu. onda su restartovali aplikaciju i javio se problem.

nisam pitao koja je verzija MySQL-a al' cenim da je 5.0.x.

moja pretpostavka je da su jos negde (hibernate) setovali transaction isolation level, ako vec nista drugo nisu dirali (tako kazu).
Acta, non verba!
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: MySQL i translation isolation level problem08.09.2011. u 12:33 - pre 152 meseci
najbolje resenje
1. skok na 5.5
2. binlog format = raw (ili mixed)

i nema brige .. em je 5.5 bolji mnoooooooooooooooooooooooooooooooooogo od svega ostalog, nije zezanje, em sa raw/mixed binlog format nemas brige sve sljaka kako treba .. moguce da ti hibernate switchne isolation level u nekom trenutku .. nemoz nista po tom pitanju da uradis .. osim da uradis sto rekoh 5.5 i raw ili mixed.

btw ja cu da se ponovim po ko zna koji put, 5.5 je toliko zastrasujuce mnogo bolji od 5.0 i 5.1 da stvarno nema razloga za neprelazak ako se koristi innodb.
 
Odgovor na temu

bjevta
Bratislav Jevtic
http://www.tojesoft.co.rs
Beograd

Član broj: 5216
Poruke: 367
*.static.sbb.rs.

Sajt: www.tojesoft.co.rs


+5 Profil

icon Re: MySQL i translation isolation level problem08.09.2011. u 17:07 - pre 152 meseci
to za 5.5 stalno pricam po firmi. valjda ce i da me cuju.

evo konfiguracije na kojoj nastaje njesra, kao i my.cnf. Ja bih iskljucio binlog, dok ne vidim sta mu Spring/C3P0/Hibernate salju kao default transaction isolation level za sesiju. Sta mislis?
-----------------
mysql Ver 14.14 Distrib 5.1.58, for pc-linux-gnu (i686) using readline 5.1
-----------------
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
server-id=22199
innodb_flush_log_at_trx_commit=1
sync_binlog=1
log-bin=/var/lib/mysql/mysql-bin.log
expire_logs_days = 4
tmpdir=/tmp

## Requested by Xavier Fort 7/29/2011
max_allowed_packet=16M
#max_connections=250
character_set_client=utf8
#character_set_connection=utf8 #invalid entry
#character_set_database=utf8 #invalid entry
character_set_filesystem=binary
#character_set_results=utf8 #invalid entry
character_set_server=utf8
#character_set_system=utf8 #invalid entry
#collation_connection=utf8_unicode_ci #invalid entry
#collation_database=utf8_unicode_ci #invalid entry
collation_server=utf8_unicode_ci
#table_type=innodb #invalid entry

## Requested by Marko Jevtovic 8/16/2011
innodb_buffer_pool_size=512M
innodb_thread_concurrency=10
innodb_additional_mem_pool_size=4M
tmp_table_size=32M
max_connections=120
default-storage-engine=innodb
default-character-set=utf8

## Added by Eric Okumura 9/2/2011
transaction-isolation=REPEATABLE-READ
Acta, non verba!
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: MySQL i translation isolation level problem09.09.2011. u 02:42 - pre 152 meseci
kinezi .. nek ti je bog u pomoci :(

ne mozes da ugasis binlog ako je to produkcioni server, mozda ima slave, binlog se koristi za point in time backup etc etc ...

elem, http://dev.mysql.com/doc/refman/5.1/en/binary-log-setting.html .. i na 5.1 mozes da setujes raw/mixed za binlog format .. to uradi i resio si problem


 
Odgovor na temu

[es] :: MySQL :: MySQL i translation isolation level problem

[ Pregleda: 1999 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.