Текущее время: Пт, фев 23 2018, 12:48

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 13:33 
Начинающий
Начинающий

Зарегистрирован:
Вт, мар 03 2015, 13:22
Сообщения: 6
Добрый день, коллеги!
Может возникнут у вас какие нибудь предложения:
нам в PI (7.3) приходит относительно большое xml сообщение (больше гига). При парсинге возникает ошибка
org.xml.sax.SAXParseException: XML document structures must start and end within the same entity

Очевидное предположение - файл где-то в пути обрезается. Но нужно это проверить/подтведить. Есть ли возможность как-нибудь залоггировать это входящее сообщение? Оно же ведь принимается в память, которая после ошибки чистится.

Все свои параметры и лимиты проверили несколько раз. Других ошибок нигде не возникает. Присоветуете что-нибудь?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 14:31 
Ассистент
Ассистент

Зарегистрирован:
Пн, окт 20 2014, 11:13
Сообщения: 47
Ну залогируете вы его, а дальше что?
Чем вы его собрались открывать?

И если файл кривой, то вы получите ту же самую ошибку.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 14:32 
Ассистент
Ассистент

Зарегистрирован:
Пн, окт 20 2014, 11:13
Сообщения: 47
Цитата:
файл где-то в пути обрезается.


У вас весь путь это система - источник -> канал -> мэппинг.

Проверьте в системе источнике настройки. Может она не дает отправлять такого объема сообщения.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 15:34 
Начинающий
Начинающий

Зарегистрирован:
Вт, мар 03 2015, 13:22
Сообщения: 6
rabbit написал(а):
Ну залогируете вы его, а дальше что? Чем вы его собрались открывать?
Это уже проще: vi, od, hexdump etc. Или скинем на рабочую машину - там уже выбор больше.

rabbit написал(а):
Проверьте в системе источнике настройки. Может она не дает отправлять такого объема сообщения.
Как это часто бывает - доступа к источнику нет. Другая организация. Говорят, что у них всё хорошо и получают 200 код в ответ.
Поэтому нужно некое подтвержение, что вот получили уже обрезанный файл. Либо всё-таки поймём, что сообщение корректное и проблема у нас.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 16:19 
Ассистент
Ассистент

Зарегистрирован:
Пн, окт 20 2014, 11:13
Сообщения: 47
Поставьте валидацию на уровне адаптера (Inbound Processing), если сообщение кривое приходит, то по идее они перестанут получать 200 ОК.
Или к настройкам в PI у вас тоже нет доступа? :)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 16:23 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 29 2011, 09:54
Сообщения: 318
Откуда: Владивосток, Россия
Пол: Мужской
Попробуйте, прежде всего, размер памяти для java-сервера увеличить.

_________________
У меня два правила:
1. Не говорить всего, что знаю.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 17:15 
Начинающий
Начинающий

Зарегистрирован:
Вт, мар 03 2015, 13:22
Сообщения: 6
Chaser009 написал:
Попробуйте, прежде всего, размер памяти для java-сервера увеличить.

Стоит 10Гб, а сообщение в 1Гб. И по памяти сейчас ошибок не видно.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 18:17 
Ассистент
Ассистент

Зарегистрирован:
Пн, окт 20 2014, 11:13
Сообщения: 47
В процессе мэппинга оно занимает гораздо больше 1 Гб.

Вы можете проверить состояние памяти в процессе обработки этого сообщения?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 19:09 
Начинающий
Начинающий

Зарегистрирован:
Вт, мар 03 2015, 13:22
Сообщения: 6
rabbit написал(а):
Поставьте валидацию на уровне адаптера (Inbound Processing), если сообщение кривое приходит, то по идее они перестанут получать 200 ОК.
Или к настройкам в PI у вас тоже нет доступа? :)

К нашему PI пока еще есть доступ :D
Попробовали, но до Inbound Processing оно не доходит. А 200 OK возвращается.

rabbit написал(а):
В процессе мэппинга оно занимает гораздо больше 1 Гб.
Вы можете проверить состояние памяти в процессе обработки этого сообщения?
Да, понятно, что оно увеличивается. Допустим даже больше, чем 10 раз. Но тогда был бы эксепшн по памяти - такие в самом начале уже ловили :lol:
Или имеется виду какой-то хитрый способ мониторинга?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 19:19 
Ассистент
Ассистент

Зарегистрирован:
Пн, окт 20 2014, 11:13
Сообщения: 47
Цитата:
Попробовали, но до Inbound Processing оно не доходит. А 200 OK возвращается.


Тогда я ничего не понимаю. В этом случае оно и до мэппинга не доходит.
В канале всё нормально отрабатывает?

Я честно признаться не сталкивался с монитором таким больших сообщений.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 19:21 
Ассистент
Ассистент

Зарегистрирован:
Пн, окт 20 2014, 11:13
Сообщения: 47
Как вариант прокиньте без изменений как есть это сообщение в файловую систему. Сценарий без мэппинга. И посмотрите потом его.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 19:36 
Начинающий
Начинающий

Зарегистрирован:
Вт, мар 03 2015, 13:22
Сообщения: 6
Да, до маппинга не доходит - какой-то парсинг видимо происходит еще в самом начале.

Вы имеете ввиду без IR?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 19:48 
Ассистент
Ассистент

Зарегистрирован:
Пн, окт 20 2014, 11:13
Сообщения: 47
Да, именно так. Если получится.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Вт, мар 03 2015, 21:36 
Начинающий
Начинающий

Зарегистрирован:
Вт, мар 03 2015, 13:22
Сообщения: 6
Спасибо, попробуем!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Ошибка парсинга большого входящего сообщения
СообщениеДобавлено: Сб, мар 07 2015, 10:40 
Директор
Директор

Зарегистрирован:
Вт, июл 18 2006, 18:44
Сообщения: 989
Откуда: что и все
Пол: Мужской
преобразовывать 1Гб файл в модуле или в меппинге можно только по частям, надо в канале-отправителе ставить признак отправки побайтно или построчно.
Стандартно в ICM ограниченое 100МБ, рекомендуется делать сообщения в районе 5-10 Мб для оптимальной производительности.

_________________
Telegram-chat: PO, CPI-PI, java, groovy


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 15 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB