don't push partial data - it is all or nothing
increment revision