working on distributed transaction