hasPreconditionFailed() and setPreconditionFailed()