OK, now I see it, you are right this is a bug. Someone was too lazy to implement record updating in a properly way. In my opinion change_date should be updated only for records that were actually changed. Goog catch!