Bug #3657 Perfomance degradation after db node failure
Submitted: 5 May 2004 10:04 Modified: 27 May 2004 13:34
Reporter: Johan Andersson Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:mysql-4.1 OS:FermiLinux LTS 3.01 (RH EL 3.0)
Assigned to: Magnus Blåudd CPU Architecture:Any

[5 May 2004 10:04] Johan Andersson
Description:
Slowdown after nodefailure. Hardly no transactions are executed. ->  4 db nodes N mysql server M java (N>=1 and M>=1) apps connected to mysql server -> disconnect one db node (unplugged network cable, but graceful shutdown of node also works)  (e.g. db.2 , enumerated from 1..4) -> performance drops to almost zero trans. / seconds -> restart node -> performance back to normal. No indexes used. No user PK is defined .

How to repeat:
1. Setup 4 db nodes + 1 mysql server. 
2. From mysql client: create table foo(a int not null, b int not null) type=ndbcluster; 
3. shutdown (graceful) db node 2 (any will do)
4. select count(*) from foo;  -> query takes 6.6 seconds.
[5 May 2004 10:14] Johan Andersson
Changed severity of bug.
[10 May 2004 14:51] Mikael Ronström
By setting ArbitrationRank: 1 on the management server this problem doesn't happen
[11 May 2004 13:48] Magnus Blåudd
The function waitUntilReady is called before each query, and this causes this delay when one node is down.

See also test case: testScan -n ScanReadWhileNodeIsDown

I suggest this problem is fixed while NR and SR + MySQL Server, is being debugged.
[11 May 2004 17:23] Johan Andersson
I think it should be fixed asap. It is a thing that many customers will try.
[27 May 2004 13:34] Magnus Blåudd
The call to function waitUntilReady has now been removed.