ON DUPLICATE KEY UPDATE on a table with more than one UNIQUE KEY is unsafe

При переходе на MySQL 5.5 с репликацией стали возникать ошибки:


Таблица при этом выглядела так:

Собственно, в MySQL 5.5 «пофиксили баг«, что свелось к тому, что теперь нельзя реплицировать результаты запросов, в которых есть ON DUPLICATE KEY UPDATE и больше одного уникального ключа.
Пришлось переделывать логику с выпиливанием столбца uniq.
В общем, MySQL молодцы, сломали обратную совместимость для устранения мелкого бага.
Ссылка на документацию — http://docs.oracle.com/cd/E17952_01/refman-5.5-en/insert-on-duplicate.html (об этом в самом низу).

Similar Posts

    None Found

One Response so far.

  1. Craigtrush:
    option takes a list of the comma-separated names of one or more partitions or subpartitions (or both) of the table. If any of the rows to be inserted by a given

LEAVE A COMMENT