Если я правильно понял, ошибка возникает не при сохранении новой записи, а при попытке добавить индекс. Если так - то скорее всего в таблице есть элементы с повторяющимися значениями name - ищем примерно так:
SELECT name, count( id ) as cnt
FROM `shops`
GROUP BY name
ORDER BY cnt desc
Естественно, изменить правила валидации необходимо, чтоб избежать появления ошибки в дальнейшем.