smartCommit