I am trying to clear my doubts w.r.t. Spring Transaction boundaries with following example.
@Transactional(propagation=Propagation.REQUIRES_NEW) public void
test() should probably be SUPPORTS, so if there is an existing TX, it will be propagated to test1(). test1() should be REQUIRED so your insert actually commits. test2() should be REQUIRES_NEW.