Subject Re: isc_reconnect_transaction ???
Author Roman Rokytskyy
Hi,

> The description of my problem is heavily simplified. I'm working on a
> wrapper library for access to Firebird in a cluster of 8 hosts. I must
> make sure, that at least one instance of the database ist always
> available and reliable.

Are you doing data replication? Have you considered not executing same
code on each server simultaneously? Recently there have been some
proposals of using group communication primitives for data
replication. Idea is relatively simple:

1. You execute transaction on server 1.
2. When transaction is about to commit (after prepare phase), it packs
all updates and _multicasts_ to other servers using total ordering
multicasting primitive.
3. Each server simply applies updates in a separate transaction.

Transactions are serialized on the server 1 and total ordered
multicasting guarantees that updates will be applied in the group in
the same order on all hosts.

There is a extension of PostgreSQL with this type of replication. More
info you can find at
http://www.inf.ethz.ch/department/IS/iks/research/dragon.html

Best regards,
Roman Rokytskyy