トランザクション分離レベルを尊重するために、32 ビット x86 Debian で MySQL 5.0.32 を取得できないようです。
問題を最も単純な形式にまとめ、mysql コマンドライン クライアントでテストしました。
-- On node writer:
--
DROP TABLE test;
CREATE TABLE test (
name VARCHAR(255)
);
set autocommit=0;
set transaction isolation level read committed;
begin;
-- On node reader:
--
set autocommit=0;
set transaction isolation level read committed;
begin;
-- On node writer:
--
INSERT INTO test VALUES ('bob');
-- On node reader:
--
SELECT * from test;
-- Returns the row with bob in it!!!
おそらく関連していますが、ロールバック後も行が残っていることに気付きました!
だから私の質問は、自動コミットが実際には無効になっておらず、トランザクションの分離レベルが事実上無視されているということですか?
チャオ、シェルドン。