1062 Duplicate entry при размещении комментария

Главные вкладки

Аватар пользователя alex-litvinov alex-litvinov 17 июля 2019 в 0:11

Добрый день, столкнулся с такой трудностью, что авторизированые и анонимные пользователи не могут оставить комментарии, высвечивается ошибка с БД. Код ошибки:

PDOException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'comment-1463-0-0-und' for key 'PRIMARY': INSERT INTO {field_data_comment_body} (entity_type, entity_id, revision_id, bundle, delta, language, comment_body_value, comment_body_format) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5, :db_insert_placeholder_6, :db_insert_placeholder_7); Array ( [:db_insert_placeholder_0] => comment [:db_insert_placeholder_1] => 1463 [:db_insert_placeholder_2] => 1463 [:db_insert_placeholder_3] => comment_node_otzivi [:db_insert_placeholder_4] => 0 [:db_insert_placeholder_5] => und [:db_insert_placeholder_6] => <p>15</p> [:db_insert_placeholder_7] => moderfil ) в функции field_sql_storage_field_storage_write() (строка 514 в файле /var/www/u0462912/data/www/busline.su/modules/field/modules/field_sql_storage/field_sql_storage.module).

Можете подсказать в чем причина

Лучший ответ

Аватар пользователя ivnish ivnish 17 июля 2019 в 7:53

Откатывайте БД из бэкапа до момента вашей "чистки"

Комментарии

Аватар пользователя Semantics Semantics 17 июля 2019 в 1:16

По какой-то причине, запись в таблице комментариев с таким ID уже есть.
Возможные причины - от неполадок в (СУ)БД до огрехов импорта/чистки контента.
Нельзя, конечно, исключать и проблемы с кодом, например, разработчик кривовато прицепился на какой-нить hook_comment_save()

Аватар пользователя marassa marassa 17 июля 2019 в 5:58

alex-litvinov wrote:
Чистилась строчка comment из-за спама было много записей.

Чистилась прямо в базе, минуя Друпал? Ну вот и причина.

Аватар пользователя Semantics Semantics 17 июля 2019 в 9:48

Я не знаю, что такое строчка, но если вы в БД как-то грубо всё сделали, то вероятно, взгрустнулось инкрементам и последовательностям.
Хотя может всё проще, comment очистили, а таблицы с полями забыли