Текущее время: Ср, апр 26 2017, 19:43

Часовой пояс: 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
Сообщения: 317
Откуда: Владивосток, Россия
Пол: Мужской
Попробуйте, прежде всего, размер памяти для 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
Сообщения: 971
Откуда: что и все
Пол: Мужской
преобразовывать 1Гб файл в модуле или в меппинге можно только по частям, надо в канале-отправителе ставить признак отправки побайтно или построчно.
Стандартно в ICM ограниченое 100МБ, рекомендуется делать сообщения в районе 5-10 Мб для оптимальной производительности.

_________________
русский скайп-чат по SAP PI и джава-разработкам


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

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


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

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


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

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