Обмен с 1С не проходит на этапе загрузки import.xml

Приветствую) Подскажите, пожалуйста, имеем проблемы следующего характера, используя стандартный штатный модуль обмена с 1С.
Не проходит полный обмен с 1С - на этапе загрузки import.xml, вот такие ошибки в error.log:

[error] 108792#108792: *508990 FastCGI sent in stderr: "PHP message: PHP Warning: Error while sending QUERY packet. PID=108732 in /home/xxxxxx/www/app/Tygh/Backend/Database/Mysqli.php on line 79

PHP message: PHP Warning: mysqli::__construct(): (HY000/2002): Connection refused in /home/xxxxxx/www/app/Tygh/Backend/Database/Mysqli.php on line 40
PHP message: PHP Warning: mysqli::__construct(): (HY000/2002): Connection refused in /home/xxxxxx/www/app/Tygh/Backend/Database/Mysqli.php on line 40
PHP message: PHP Warning: mysqli::__construct(): (HY000/2002): Connection refused in /home/xxxxxx/www/app/Tygh/Backend/Database/Mysqli.php on line 40
PHP message: PHP Warning: mysqli::query(): Couldn’t fetch mysqli in /homexxxxxx/www/app/Tygh/Backend/Database/Mysqli.php on line 79

PHP message: PHP Warning: Tygh\Backend\Database\Mysqli::errorCode(): Couldn’t fetch mysqli in /home/xxxxxx/www/app/Tygh/Backend/Database/Mysqli.php on line 131" while reading upstream, client: 62.149.28.186, server: xxxxxx.ua, request: “GET /exim_1c/?type=catalog&mode=import&filename=import.xml HTTP/1.1”, upstream: “fastcgi://unix:/var/run/xxxxxx.sock:”, host: “xxxxxx.ua”

В обмене участвует около 38К товаров. Файл импорт около 70Мб.
Обмен обрывается, практически, после загрузки около 5К товаров. Частями, разбивая выгрузку в 1С, грузить по группам номенклатуры - так можно загрузить все. Но это же не выход.

С чего начинать решение проблемы?

Попросите разработчиков посмотреть логи на стороне mysql, скорее всего рвется соединение с базой. Как обычно - увеличьте max_allowed_packet, возможно вставка большая.

Спасибо. Проблему решили, проставив индексы по полям. Не могла отработать первая выгрзка-связка по коду. После первичной связки, обмены по external_id.

1 лайк

Проверил сейчас - там действительно нет индекса, это ошибка. @cs-cart_team примите во внимание - на больших каталогах обмен будет кое как работать.

можете поделиться скриншотами правильной настройки модуля commerceml из коробки сs-cart?

Да, конечно

Но пришлось со стороны 1C вносить правки в формирование самих файлов оffers.xml и import.xml - смотря какая версия схемы commerceml у вас в 1С.
Плюс не обошлось, без внесения изменений в модуль обмена rus_exim_1с + еще необходимы правки, в части загрузки заказов с сайта.

большое спасибо, т.е. заявленная в цскарт полная интеграция с 1с - чушь? без костылей и доработок похоже не обойдется.

Есть нюансы)) Как освожусь чуть - напишу в баг-трекер на сей счет

У всех CMS интеграция с 1С не обходится без костылей и доработок, увы.

Присоединяюсь к теме. С недавних пор похожая ситуация. В логах ошибок нет.
1С при выгрузке когда ждет ответа сервера говорит:

Произошла ошибка при получении данных - {Обработка.ОбменССайтомБитрикс.МодульОбъекта(366)}: Ошибка при вызове метода контекста (Получить)
Соединение.Получить(СокрЛП(ПараметрыЗапроса), ИмяФайлаОтвета, СокрЛП(Заголовки));
по причине:
Ошибка работы с Интернет: Transferred a partial file
Не удалось получить текущее состояние процесса обмена. Данные обмена отправлены, но не загружены.
Обмен не выполнен
Выгрузка товаров завершена с ошибками!

Import.xml, Offers.xml в папке var на сервере появляются новые актуальные.

но количество товара не меняется, не убирается уже проданный товар (количество товара берется из всех складов офлайн магазинов)

при попытке вручную загрузить exim_1c.php?type=catalog&mode=import&filename=import.xml
после ввода логина и пароля процесс грузиться, потом зависает и станица недоступна.

Проблема появилась после того как в мультивендоре добавили еще 2 витрины, теперь их 5 с одной товарной базой.

если выгружать 20 товаров то загрузка проходит, 50 товаров проходит раза с 5, а если больше то вообще нивкакую. Общая база уже 25000 предложений, грузим ее без картинок обновляя только количество.

на хостинге увеличили мощности в 2 раза. 4 ядра, 6 рам и ssd. Уже подумываем о хостинге на своем сервере, т.к дешевле будет свой сервер собрать, чем увеличение мощности хостинга (за 1,5 год свой окупиться).

Проблема есть и никак не решается.

Дополню. Только что при попытке загрузить проверил error.log, там нет данных об ошибке последней загрузке с этим числом и временем.

1 лайк

Аналогичные проблемы испытываю. Помочь никто не может почему-то. Никто не берется решить проблему, все предлагают взять денег за посмотреть, результата не обещая. Файлы XML выгружаются стабильно, а в базу товары не попадают. Полную выгрузку я уже даже не запускаю. Вот сейчас, в категории CS-Cart 29 товаров. В 1С в этой категории 42 товара. Запускаю выгрузку, без картинок. В категории стало 32 товара. Проверяю в файле импорта - все 42 товара. Что за ерунда - не понятно. Иногда, частично(а в исключительных случаях даже сразу) небольшие категории таки прогружаются с первого раза. Но это по очень счастливому стечению обстоятельств. К кому обращаться - тоже не ясно. EcomLabs сделали предложение в стиле “я не гинеколог, но посмотреть могу”, без обещания починить. Как решить - не понятно. При этом цены и остатки прогружаются стабильно, сразу на все выгруженные товары, без косяков. Т.е. обновить цены на 10 с чем-то тысяч товаров - легко и быстро. А вот выгрузить товары - никак. При том что 1С выгружает файлы корректно и всегда. Причем почти при каждой выгрузке 1-2 товара всё-таки добавляются. А могут и не добавиться… Странно это. Проблемы появились как только в товарной базе стало товаров чуть больше 0 - не заметил точно, где-то с 500 или с 1000. Т.е. корректно работало фактически только во время тестирования. В поддержку обращался - тоже не помогли, начали кивать в сторону 1С. Хотя именно 1С стабильно свою работу выполняет.