Well, your vote count is basically a cache of the participations belonging to the answer, right? Rails provides a feature for this, called counter cache and I'd hope it checks the validations before bumping it.