complete update & revert