MySQL Cluster and transient errors

Simon Wistow <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.general
Message-ID <[email protected]>
We're using MySQL Cluster and get errors like

DBD::mysql::st execute failed: Got temporary error 1218 'Send Buffers 
overloaded in NDB kernel' from NDBCLUSTER at 
/usr/local/share/perl/5.10.1/Data/ObjectDriver/Driver/DBI.pm line 161.

Pretty frequently. Since most of these errors are temporary we should 
probably retry them but I'm not sure whether there's any established 
best practice for this, especially within transactions. Should we retry 
the individual statement or retry the whole transaction?

There's this module

http://search.cpan.org/~bduggan/DBIx-TryAgain-0.05/lib/DBIx/TryAgain.pm

and I'm wondering if anyone's used it in anger. 

For what it's worth these are the temporary errors we get

270 'Transaction aborted due to node shutdown'
1218 'Send Buffers overloaded in NDB kernel' 
4010 'Node failure caused abort of transaction' 
4028 'Node failure caused abort of transaction'
4119 'Simple/dirty read failed due to node failure'"

Simon
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.