handling case where a counter is fixed to be zero

We ran into an issue where the counter cache had become negative.  When we tried to fix the counter cache on the model it fell over inserting a null value into the counter column.

This pull request fixes the issue where a counter columns value has changed and should be back to zero.