recursive solution not working for big volume
commit all