If CMT transaction calls BMT method, CMT transaction suspended and BMT starts its own transaction by temporarily suspending CMT transaction, now if we marked setRollback() into BMT,does it means that CMT transaction will also not get commit or i have to understand that that are 2 different transaction.
According to what i understand was CMT ->propogate->BMT so both are individual transaction and will make not difference to CMT if BMT make setrollBack(), BMT transaction will not commit but has no effect on CMT.
You are correct. The rollback on the BMT transaction has no effect on the suspended CMT transaction. The CMT transaction "doesn't know" about the BMT transaction - it may commit despite the rollback on the BMT transaction or it could rollback because its running into different problems entirely.
You showed up just in time for the waffles! And this tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop