OTS 1.1 NO IDEA Avatar
  1. OMG Issue

OTS11 — register_resource & SubTransactionAwareResource

  • Key: OTS11-25
  • Legacy Issue Number: 3784
  • Status: open  
  • Source: IONA ( Matthew Newhook)
  • Summary:

    I'm confused by the behaviour of register_resource with respect to
    the SubtransactionAwareResource interface.

    From 99-10-07.pdf:

    "If the resource is a subtransaction aware resource (it supports the
    SubtransactionAwareResource interface) and the transaction associated
    with the target object is a subtransaction, then this operation
    registers the specified resource with the subtransaction and indirectly
    with the top-level transaction when the subtransaction’s ancestors have
    completed. Otherwise, the resource is registered as a participant in the
    current transaction. If the current transaction is a subtransaction,
    the resource will not receive prepare or commit requests until the
    top-level ancestor terminates."

    This seems to vaguely say that the resource will be registered as a
    SubtransactionAwareResource with if the current transaction is a
    subtransaction.

    However, later in the second paragraph of 10.3.9:

    "Certain recoverable objects may want a finer control over the
    registration in the completion of a subtransaction. These recoverable
    objects will use the register_resource operation to ensure participation
    in the completion of the top-level transaction and they will use the
    register_subtran_aware operation to be notified of the completion of
    a particular subtransaction."

    This says pretty clearly that the application has to call both
    register_resource and register_subtran_aware to be registered as a
    resource in the transaction and to receive
    commit_subtransaction/rollback_subtransaction callbacks.

    What is the intended behaviour?

  • Reported: OTS 1.0b1 — Mon, 14 Aug 2000 04:00 GMT
  • Updated: Fri, 6 Mar 2015 20:57 GMT