supporting transaction mode