ADO 2.8 and Compatibility mode

If you have old code, that access Sql Server through MS-ADO 2.8, you can have some trouble if connect to DB on Sql Server 2016 with compatibility mode do 2016 (130). You can experience some random error on update:

Row cannot be located for updating. Some values may have been changed since it was last read.

The error is absolutely random. On the same table one row update go, the next no.

The only solution is to set compatibility level to 2014 (120) or 2012 (110).