fix inner transactions commit and abort, add basic transactions unit tests