How would you guarantee the success of the transaction? If it fails as a result of a 
hardware failure, then ultimately, the system as a whole has suffered a hardware 
failure. If it fails for any other reason, then it's an issue with software or bad 
data. Once those things are figured out, you proceed forward. 

If you need HA (high availability) from the database, then consider using more than 
one machine and a product like TurboCluster 6 which can monitor the hardware and 
software availability of the system. 

Of course, when I say system, I'm speaking in a way that includes transaction servers, 
web servers, db servers, and whatever else it is you are doing.

Now in the event that a transaction fails, does that mean that the process just gives 
up and dies? If a db machine fails, just have the process redirect it's transaction to 
a replicated machine. This is a simple explanation of what's possible, but with a 
little planning, you can get it done. 

As for this...
> Once the transaction failed it should take the failed 
> database out of service.

.. I believe you are better of to have a piece of cluster management software (as an 
example) manage this. The process that is respnosible for the transaction would know 
in advance what machine to fail over too should a failure occur. Besides, adding a 
'layer' that is responsible for managing the success of queries or transactions and 
live db servers and machines is probably creating un-needed complexity.

On the other hand, there is a hunk of code out there called db balancer that is aimed 
at providing replication and load balancing for postgress db's. Considering the code 
is available, it prolly would'nt be much work to extend it for duty with MySQL. I 
however feel that's lack of maturity excludes from serious consideration. 

But your timeframe and needs may be different from mine. 

Later on,
TRC

> The thing is I'm looking for a solution with guaranteed transaction success. I have
> thought about building a layer that would guarantee transaction success. Say I had
> two duplicate databases and if a transaction failed on one it would still succeed
> on the other. Once the transaction failed it should take the failed database out
> of service. I believe this could be fairly straightforward but thought I would
> check the list to see if someone had already built a product or setup some system
> that would allow for this.
> 
> Dave Turner



-- 
_______________________________________________
Download the free Opera browser at http://www.opera.com/

Powered by Outblaze

---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to