positions are now persisted in db