dtm.commit() accepts a callback instead of returning