Ошибка при сохранении правила URL при импорте товаров
29.10.2011 05:57
Здравствуйте, Дмитрий!
Проимпортировал 2-3 файла. При импорте товаров из четвертого файла без каких-то изменений настроек начала проявляться следующая проблема: Делаю стандартный импорт через профили. На стадии после "Пожалуйста, подождите. Обновляются индексы... " выскакивает предупреждение "Ошибка при сохранении правила URL". Затем импорт завершается стандартным "Выполнение профиля завершено."
На первый взгляд, значимых проблем не обнаружилось, но затем я заметил, что у части товаров есть проблемы с индексом: выдается индекс "domen.ru/catalog/product/view/id/510/s/название товара/category/3/"
Плюс чуть позже во время переиндексации заметил, что переиндексация по Catalog URL Rewrites не завершается или не происходит. Буквально за час до импорта товаров все прекрасно переиндексировалось. Пробовал раз 5 переиндексировать, даже после перезагрузки сервера, но проблема продолжала оставться.
Не знаете в чем может быть дело, и как разобраться с данной проблемой?
Спасибо
Проимпортировал 2-3 файла. При импорте товаров из четвертого файла без каких-то изменений настроек начала проявляться следующая проблема: Делаю стандартный импорт через профили. На стадии после "Пожалуйста, подождите. Обновляются индексы... " выскакивает предупреждение "Ошибка при сохранении правила URL". Затем импорт завершается стандартным "Выполнение профиля завершено."
На первый взгляд, значимых проблем не обнаружилось, но затем я заметил, что у части товаров есть проблемы с индексом: выдается индекс "domen.ru/catalog/product/view/id/510/s/название товара/category/3/"
Плюс чуть позже во время переиндексации заметил, что переиндексация по Catalog URL Rewrites не завершается или не происходит. Буквально за час до импорта товаров все прекрасно переиндексировалось. Пробовал раз 5 переиндексировать, даже после перезагрузки сервера, но проблема продолжала оставться.
Не знаете в чем может быть дело, и как разобраться с данной проблемой?
Спасибо
29.10.2011 06:54
Вы имеете в виду файл CSV на котором началась ошибка, или какой-то файл с расшифровкой ошибки?
29.10.2011 07:04
Файлы для импорта, на которых произошла ошибка, отправлены Вам в личку.
Впервые ошибка проявилась во время импорта import-20111029000444-1_trimmer.csv . Далее повторилась при импорте import-20111029002815-1_feny.csv
Затем, при поиске причин ошибки я обнаружил, что в первом файле 20111029000444-1_trimmer.csv в нескольких товарах были прописаны категории Default Category и часть товаров прикреплялась к данной категории. В третьем файле import-20111029014459-1_trimmer.csv это было исправлено.
Впервые ошибка проявилась во время импорта import-20111029000444-1_trimmer.csv . Далее повторилась при импорте import-20111029002815-1_feny.csv
Затем, при поиске причин ошибки я обнаружил, что в первом файле 20111029000444-1_trimmer.csv в нескольких товарах были прописаны категории Default Category и часть товаров прикреплялась к данной категории. В третьем файле import-20111029014459-1_trimmer.csv это было исправлено.
29.10.2011 17:37
Может быть попробовать удалить все товары с сайта, а затем почистить в базе данных таблицу, отвечающую за эти индексы? Или это бесполезно?
29.10.2011 17:40
Из радикальных способов можно попробовать
но лучше сначала понять причину.
TRUNCATE core_url_rewrite
но лучше сначала понять причину.
29.10.2011 17:52
Я сам точно понять причину не смогу. Ну а если и у Вас не получится, попробую TRUNCATE core_url_rewrite. Это в качестве запроса к базе нужно будет выполнить?
Из дополнительной информации по предыстории проблемы: незадолго до ее появления товары порядка 250 товаров, ранее загруженных, удалялись мной, а затем они вновь импортировались (за несколько дней до этого та же группа также удалялась и повторно импортировалась). Но не знаю, как это может быть связано. Плюс на этапе после возникновения "Ошибка при сохранении правила URL" я пробовал отключить отображение категории в индексе. Это было после ошибок при импорте, но до замеченных проблем с переиндексацией по Catalog URL Rewrites. С тех пор эта настройка так и застряла, видимо, из-за того, что переиндексация не может завершиться.
Из дополнительной информации по предыстории проблемы: незадолго до ее появления товары порядка 250 товаров, ранее загруженных, удалялись мной, а затем они вновь импортировались (за несколько дней до этого та же группа также удалялась и повторно импортировалась). Но не знаю, как это может быть связано. Плюс на этапе после возникновения "Ошибка при сохранении правила URL" я пробовал отключить отображение категории в индексе. Это было после ошибок при импорте, но до замеченных проблем с переиндексацией по Catalog URL Rewrites. С тех пор эта настройка так и застряла, видимо, из-за того, что переиндексация не может завершиться.
30.10.2011 00:15
Попробовал TRUNCATE core_url_rewrite без удаления всех товаров. В итоге опять Ошибка при сохранении правила URL и незавершение переиндексации Catalog URL Rewrites. Осталось попробовать удалить весь товар а затем повторно выполнить данный запрос.
30.10.2011 00:44
Попробовал решение, описанное на одном из иностранных ресурсов:
Удаляем содержимое var/locks
Затем запрос:
DELETE cpop.* FROM catalog_product_option_price AS cpop
INNER JOIN catalog_product_option AS cpo
ON cpo.option_id = cpop.option_id
WHERE
cpo.type = 'checkbox' OR
cpo.type = 'radio' OR
cpo.type = 'drop_down';
DELETE cpotp.* FROM catalog_product_option_type_price AS cpotp
INNER JOIN catalog_product_option_type_value AS cpotv
ON cpotv.option_type_id = cpotp.option_type_id
INNER JOIN catalog_product_option AS cpo
ON cpotv.option_id = cpo.option_id
WHERE
cpo.type <> 'checkbox' AND
cpo.type <> 'radio' AND
cpo.type <> 'drop_down';
Далее переиндексация, но позитивного эффекта опять нет, проблема остается.
Удаляем содержимое var/locks
Затем запрос:
DELETE cpop.* FROM catalog_product_option_price AS cpop
INNER JOIN catalog_product_option AS cpo
ON cpo.option_id = cpop.option_id
WHERE
cpo.type = 'checkbox' OR
cpo.type = 'radio' OR
cpo.type = 'drop_down';
DELETE cpotp.* FROM catalog_product_option_type_price AS cpotp
INNER JOIN catalog_product_option_type_value AS cpotv
ON cpotv.option_type_id = cpotp.option_type_id
INNER JOIN catalog_product_option AS cpo
ON cpotv.option_id = cpo.option_id
WHERE
cpo.type <> 'checkbox' AND
cpo.type <> 'radio' AND
cpo.type <> 'drop_down';
Далее переиндексация, но позитивного эффекта опять нет, проблема остается.
30.10.2011 01:39
После удаления всех товаров и последующего TRUNCATE core_url_rewrite переиндексация состоялась. Три файла импорта система съела успешно. Буду надееться, что это было просто какое-то роковое сочетание обстоятельств во время импорта, которое как-то вывело систему в нераброчее состояние.
Кстати, методами, описанными в посте #10 я ничего не мог испортить, что в будущем может себя проявить?
Спасибо.
Кстати, методами, описанными в посте #10 я ничего не мог испортить, что в будущем может себя проявить?
Спасибо.
30.10.2011 03:52
К сожалению, после импорта 5 или 6 файла проблема вновь появилась. Может где-то каких-то установленных лимитов не хватает, памяти, времени и т.д.?
30.10.2011 08:20
Но в том случае было более 2100 товаров и 768 мб RAM. В текущем случае 2 Гб RAM на менее чем 550 товаров.
30.10.2011 08:21
768 мб - это какое-то недоразумение: на прошлом сервере у вас стояло ограничение 128 мегабайтов.
31.10.2011 07:41
Выполнил прямо на вашем сервере импорт указанных вами файлов import-20111029014459-1_trimmer.csv и import-20111029002815-1_feny.csv, и проблемы не увидел.
Старайтесь более точно формулировать свои проблемы и конкретную посоледовательность шагов к их воспроизведению, чтобы не тратить время впустую.
Старайтесь более точно формулировать свои проблемы и конкретную посоледовательность шагов к их воспроизведению, чтобы не тратить время впустую.
31.10.2011 17:11
Со вчерашней ночи не мог войти в форум и написать о результатах поиска проблемы. К сожалению, import-20111029014459-1_trimmer.csv не импортировался бы, если бы ночью мне не удалось его и другие файлы импортировать. Соответственно, индекс уже был прописан и не менялся за счет пустых столбцов в import-20111029014459-1_trimmer.csv.
Удалось выяснить причину ошибки с переиндексацией по Catalog URL Rewrites при импорте товаров из CSV.
Методом исключения удалось понять, что проблема возникает из-за импорта товаров, имеющих:
а. достаточно длинное название.
б. достаточно длинную одинаковую часть названия с различиями только в самом конце названия.
Привожу примеры таких пар названий:
Подушечка чернильная универсальная матовая StazOn Opaque с флаконом 15 мл для дозаправки. Цвет нежный розовый
Подушечка чернильная универсальная матовая StazOn Opaque с флаконом 15 мл для дозаправки. Цвет нежный голубой
Но проблему вызывала и измененная пара:
Подушечка чернильная универсальная матовая StazOn Opaque (Цвет нежный розовый) с флаконом 15 мл для дозаправки.
Подушечка чернильная универсальная матовая StazOn Opaque (Цвет нежный голубой) с флаконом 15 мл для дозаправки.
Заработала переиндексация только после изменения названий в паре на:
Подушечка чернильная универсальная матовая нежно-розовая StazOn Opaque с флаконом 15 мл для дозаправки.
Подушечка чернильная универсальная матовая нежно-голубая StazOn Opaque с флаконом 15 мл для дозаправки.
Видимо, есть какие-то ограничения по количеству символов для обрезки названия товара в индексе. А когда обрезка проходит и остается полностью одинаковое сочетание символов, система не в состоянии самостоятельно доставить цифру 1 или любой другой символ, для того, чтобы индексы получились отличающимися друг от друга.
Спасибо за помощь.
Удалось выяснить причину ошибки с переиндексацией по Catalog URL Rewrites при импорте товаров из CSV.
Методом исключения удалось понять, что проблема возникает из-за импорта товаров, имеющих:
а. достаточно длинное название.
б. достаточно длинную одинаковую часть названия с различиями только в самом конце названия.
Привожу примеры таких пар названий:
Подушечка чернильная универсальная матовая StazOn Opaque с флаконом 15 мл для дозаправки. Цвет нежный розовый
Подушечка чернильная универсальная матовая StazOn Opaque с флаконом 15 мл для дозаправки. Цвет нежный голубой
Но проблему вызывала и измененная пара:
Подушечка чернильная универсальная матовая StazOn Opaque (Цвет нежный розовый) с флаконом 15 мл для дозаправки.
Подушечка чернильная универсальная матовая StazOn Opaque (Цвет нежный голубой) с флаконом 15 мл для дозаправки.
Заработала переиндексация только после изменения названий в паре на:
Подушечка чернильная универсальная матовая нежно-розовая StazOn Opaque с флаконом 15 мл для дозаправки.
Подушечка чернильная универсальная матовая нежно-голубая StazOn Opaque с флаконом 15 мл для дозаправки.
Видимо, есть какие-то ограничения по количеству символов для обрезки названия товара в индексе. А когда обрезка проходит и остается полностью одинаковое сочетание символов, система не в состоянии самостоятельно доставить цифру 1 или любой другой символ, для того, чтобы индексы получились отличающимися друг от друга.
Спасибо за помощь.