datastore: commit transactions after queueing modifications

RE: #300