Hi Andrew,
I am certain that I changed the engine from MyIsam and InnoDB to
NDBCLUSTER.
The data nodes are working well.
I found data lost when I shutdown one SQL node while executing the SQL
operation.
I think the reason is like this:
The SQL nodes are executing sql operation and at the same time one SQL
node is shutdown. Then I got sql exception in my log file.
Even if the mysql cluster successfully switched from handling SQL
operation from the error SQL node to the correct one, but it doesn't
record the information of sql operation that were not executed
successfully.
Because of this, these sql operations are not executed successfully at
all. And these rows are supposed to insert into the table are lost.
From the beginning to the end, the Data nodes are working well.
In my opinion, it can implement load balancing by the way of configuring
the JDBC URL like jdbc:mysql:loadbalance://host1,host2, it should also
implement fail-over without losing any data. Even if these sql
operations are not completed during the switching from down SQL node to
the normal one.
But the result of test prove that it can't achieve this. Why?
Expect your help, thanks
Peter
________________________________
From: Andrew Morgan
Sent: March 1 2010 10:47am
To: cluster@stripped
Subject: RE: How to implement genuine HA without losing any data if one
SQL node of mysql cluster out of service?
Hi Peter,
If the tables are created using the NDB storage engine then when a
transaction is committed, the changes are immediately visible to all
mysqlds. Are you certain that you included 'engine=ndb' when you created
your tables?
Regards, Andrew.