FirebirdSQL logo

IDtc

Interface IDtc — Coordonnatrice des transactions distribuées Permet de démarrer une transaction distribuée (fonctionne avec deux connexions ou plus). Contrairement à l’approche pré-FB3, où une transaction distribuée doit être démarrée de cette manière dès le début, le Firebird 3 Distributed Transaction Coordinator vous permet également de joindre des transactions déjà en cours en une seule transaction distribuée.

  1. join

    ITransaction* join(StatusType* status, ITransaction* one, ITransaction* two)

    Combine 2 transactions indépendantes en une transaction distribuée. En cas de succès, les deux transactions passées à join() sont libérées et les pointeurs vers elles ne doivent plus être utilisés.

  2. startBuilder

    IDtcStart* startBuilder(StatusType* status)

    Renvoie l’interface IDtcStart.

IDtcStart

Interface IDtcStart — remplace le tableau des structures TEB (passé isc_start_multiple() à l’API ISC). Cette interface rassemble les connexions (et les TPB correspondants) pour lesquelles la transaction distribuée doit être démarrée.

  1. addAttachment

    void addAttachment(StatusType* status, IAttachment* att)

    Ajoute une connexion, la transaction pour celle-ci sera déclenchée avec TPB par défaut.

  2. addWithTpb

    void addWithTpb(StatusType* status, IAttachment* att, unsigned length, const unsigned char* tpb)

    Ajoute la connexion et le TPB qui seront utilisés pour déclencher la transaction pour cette connexion.

  3. start

    ITransaction* start(StatusType* status)

    Démarre une transaction distribuée pour les connexions collectées. En cas de succès, il renvoie l’interface IDtcStart.