When a temporary error is encountered on the slave (like deadlock), the
transaction is retried.
But one of the patches for
MDEV-4506, parallel replication, broke this. The
transaction is still retried, but the error is not cleared from SHOW SLAVE
STATUS, which can cause problems later.
There is a test case rpl_temporary_errors that is supposed to test this and
catch any regressions, but that test is broken by some old 2007 idempotency
stuff and does not actually test anything, which allowed this to slip through.