add transaction support in project
remove useless codes