XA-Compliantな実装覚書

以前に1-pipe方式では、XAの関数の中で有効な実装が必要なのはxa_recover()(とxa_open/close())だけと書いたがこれは間違いであった。xa_recover()要求に対しリストアップされるin-doubtトランザクションに対してxa_rollback()かxa_commit()を発行する(msdtc.exeから)ことになるのでxa_rollback()とxa_commit()も有効な実装が必要である(xa_forget()も多分必要と思ったがシミュレーションでは発行させることが出来なかった)。OLEトランザクションのnativeな仕組ではリカバリ情報をparticipants(RM)側から問い合わせる(IResourceManager::Reenlist)ことになっているようであり、この部分に関してはCoordinator(TM)側から問い合わせを行うXAの仕様との間には適当なマッピングが存在しない。