Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
13.05.2025, 23:11:56
Начало Помощь Поиск Войти Регистрация
Новости: ООО «Скрин маркет системз», правообладатель программы «Система брокерского обслуживания «TRANSAQ» официально заявляет, что не ведет никакой деятельности в мессенджерах или социальных сетях. 
Подробности на нашем сайте  WWW.TRANSAQ.RU.

Transaq  |  СБО "Transaq"  |  TRANSAQ Connector  |  Topic: Error reading end tag. « предыдущая тема следующая тема »
Страниц: [1] Печать
Автор Тема: Error reading end tag.  (Прочитано 5768 раз)
Dmitry Vashchilov
Newbie
*
Сообщений: 6


Просмотр профиля Email
« : 05.05.2017, 21:06:44 »

Здравствуйте!

Периодически при частом polling-e командой "get_portfolio" по всем клиентам (<client>...</client>) полученных при подключении получаю ошибку вида: <error>Error reading end tag.</error>. Перед и после вызова SendCommand при выводе строка команды одинаковая (вида <command id="get_portfolio" client="CLIENT_ID"></command>), однако в логах (*_xdf.log) вижу следующее:

001552.820041 [3032] [3104] <bad_cmd> [ I] <command id="get_portfolio" client="CLIENT_ID"></cnd>
001552.820538 [3032] [3104] <error> [R] <error>Error reading end tag.</error>

причем endtag отличается (</cnd>, </com>, </comm и т.д.) и это происходит периодически, т.е. по тем же самым клиентам отправляется то нормально (</command>), то с испорченным endtag (</cnd> и т.п.).

Подскажите пожалуйста в чем проблема.
Записан
Dmitry Vashchilov
Newbie
*
Сообщений: 6


Просмотр профиля Email
« Ответ #1 : 05.05.2017, 21:24:52 »

в дополнении к предыдущему так же получаю <error>Error reading Attributes.</error>
И если посмотреть на длину строки можно увидеть что она у всех испорченных строк совпадает:

<command id="get_portfolio" client="12345/12345"ommand>
<command id="get_portfolio" client="12345/12345"></comm
Записан
Dmitry Vashchilov
Newbie
*
Сообщений: 6


Просмотр профиля Email
« Ответ #2 : 05.05.2017, 23:19:33 »

Так же вопрос, рассчитан ли Transaq connector на многопоточное использование, т.е. могу ли я не дождавшись результата вызова SendCommand вызывать SendCommand из другого потока? 
Записан
Сорвачев Сергей
Разработчики
Jr. Member
*****
Сообщений: 54


Просмотр профиля Email
« Ответ #3 : 16.05.2017, 10:58:41 »

при частом polling-e командой "get_portfolio"
Команда вызывается из нескольких потоков?

рассчитан ли Transaq connector на многопоточное использование? 
Не расчитан. Возможно, отсюда (если вы используете библиотеку в многопоточном режиме) и ошибка Error reading end tag


Записан
Dmitry Vashchilov
Newbie
*
Сообщений: 6


Просмотр профиля Email
« Ответ #4 : 19.05.2017, 15:00:24 »

Да, проблема исчезла после расстановки блокировок, спасибо.

P.S. Хорошо бы добавить информацию о том что connector не thread-safe в документации.
Записан
Страниц: [1] Печать 
Transaq  |  СБО "Transaq"  |  TRANSAQ Connector  |  Topic: Error reading end tag. « предыдущая тема следующая тема »
Перейти в:  


Войти

Powered by MySQL Powered by PHP Powered by SMF 2.0.10 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!