← Назад

Переход с 4.0 на 4.1

Добрый день. После перехода возникла проблема. В какой-то момент перестает приходить информация по последней сделке, т.е. последняя сделка по инструменту просто не меняется хотя в параллельно запущенной версии на 4.0 все изменения приходят. Что делать?

Комментарии (15)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

Alexander
Alexander

По последней вашей сделки или Security.LastTrade? Наблюдается ли это в SampleGui? На боевом сервере или на тестовом?

Александр (ПАА)
Александр (ПАА) Автор

Security.LastTrade Тестовый сервер В SampleGui вроде нет. Да и у меня такое случается после старта стратегии.

Alexander
Alexander

Александр (ПАА): В SampleGui вроде нет. Да и у меня такое случается после старта стратегии.

Раз в SampleGui не наблюдается - может у вас проблема? Я с утра запустил SampleGui - спустя час всё приходит пока...

Пришлите минимальный пример на котором у вас это воспроизводится.

Александр (ПАА)
Александр (ПАА) Автор

Может и у меня проблема, просто с 4.0 её не было, вот и думаю теперь куда копать. А с примером не знаю как быть, оно и не всегда происходит, не весь же проект высылать.

Alexander
Alexander

Александр (ПАА): Может и у меня проблема, просто с 4.0 её не было, вот и думаю теперь куда копать. А с примером не знаю как быть, оно и не всегда происходит, не весь же проект высылать.

Попробуйте модифицировать SampleGui чтоб проблема воспроизвелась. Или посмотрите на SampleGui и исследуйте почему у вас не меняется.

Можно пойти от простого - продолжает ли приходить и меняться информация по остальной части инструмента - это отследить можно по событию SecuritiesChanged

Александр (ПАА)
Александр (ПАА) Автор

Хорошо. Попробую. И еще вопрос, С 4.0 была такая запись if (PlazaTrader.StreamRegistry.DealFutureStream.IsOnline()) чем её правильнее заменить в 4.1 ?

Пару раз возникала такая ситуация в 4.1, запущенное из студии приложение просто закрывалось в процессе работы без каких либо сообщений, тоже совершенно не ясно почему.

Alexander
Alexander

Александр (ПАА): Хорошо. Попробую. И еще вопрос, С 4.0 была такая запись if (PlazaTrader.StreamRegistry.DealFutureStream.IsOnline()) чем её правильнее заменить в 4.1 ?

Пару раз возникала такая ситуация в 4.1, запущенное из студии приложение просто закрывалось в процессе работы без каких либо сообщений, тоже совершенно не ясно почему.

PlazaTrader.TableRegistry.StreamRegistry.DealFutureStream.IsOnline()

надо смотреть по аутпут логу, видимо у вас возникает Exception, который вы не отлавливаете. Попробуйте в дебаге запустить и в try\catch обернуть

Александр (ПАА)
Александр (ПАА) Автор

В студии выставил отслеживать вообще все exception.

При подключении теперь вылетает вот что:

System.ArgumentOutOfRangeException: Пересечение между машинным и управляемым кодом

Новая запись для таблицы FORTS_FUTTRADE_REPL--deal имеет неправильную ревизию 23993884. Parameter name: record Actual value was 23993884.

После чего подключается нормально дальше.

Alexander
Alexander

Посмотрим, спасибо. Возможно, бага. Связана с ревизиями.

Alexander
Alexander

Пофикшено

Александр (ПАА)
Александр (ПАА) Автор

Уже писал, о проблеме с неожиданном закрытием программы. Причина в моем коде так и не найдена, возможно к этому приводит исполнение какого-то события. Exepton не вылетает. В стеке вызовов пишет вот это:

Первый этап обработки исключения типа "System.IndexOutOfRangeException" в приложении StockSharp.Algo.dll Программа "[2432] Trader.vshost.exe: Управляемый (v4.0.30319)" завершилась с кодом 0 (0x0).

Я все же предполагаю, что проблема может быть в обработке исключений в StockSharp.Algo.dll. Может можно как-то кидать exepton?

Alexander
Alexander

Первый этап обработки исключения типа "System.IndexOutOfRangeException" в приложении StockSharp.Algo.dll

Это - не exception. Вы запускаете под дебагом в Visual Studio, это сообщение совсем о другом.

У вас Sample нормально работает? Лицензия получена? ProcessDataError что выдаёт? Версия последняя с codeplex?

Александр (ПАА)
Александр (ПАА) Автор

В том то и дело, что ничего не выдает. По крайней мере это последнее сообщение которое я стабильно вижу при вылете программы. Запускаю из студии в дебаге. Версия сейчас 17023. По поводу лицензии, на сколько я понимаю из темы про лицензированию, то триальная лицензия должна загрузиться автоматически?

Den
Den

Александр (ПАА): В том то и дело, что ничего не выдает. По крайней мере это последнее сообщение которое я стабильно вижу при вылете программы. Запускаю из студии в дебаге. Версия сейчас 17023. По поводу лицензии, на сколько я понимаю из темы про лицензированию, то триальная лицензия должна загрузиться автоматически?

Была такая проблема, не знаю пофикшена она в dev уже или нет: Ошибка при автоскачивании лицензии

Alexander
Alexander

Александр (ПАА): В том то и дело, что ничего не выдает. По крайней мере это последнее сообщение которое я стабильно вижу при вылете программы. Запускаю из студии в дебаге. Версия сейчас 17023. По поводу лицензии, на сколько я понимаю из темы про лицензированию, то триальная лицензия должна загрузиться автоматически?

Скачайте новую версию с codeplex, я делал фикс с лицензией.