abstract dao commit