There could be dozens and hundreds of issues (and more!) in a complex query feeding into another table. How would you start the logging? Maybe it's the result of some math or formula (did the wider "datatype" win out??) making the source of the error not as clear. Maybe it's the result of collation settings.

The point to take away here is that there is no "check data for clear sailing" pass done. The data is moved and if the move is not legal - hammer drops...