Не запускается Гидра.
Atom Ответить
09.09.2014


Добрый день.
Не могу запустить Гидру (последняя актуальная версия в вин7 32). Зависает на попытке загрузить инструменты.
Содержание лога:
Цитата:
20:52:18.197|Error |S#.Data |System.InvalidOperationException: При просмотре дерева превышена логическая глубина дерева. Возможно, в дереве имеется циклическая зависимость.
в System.Windows.FrameworkElement.FindResourceInTree(FrameworkElement feStart, FrameworkContentElement fceStart, DependencyProperty dp, Object resourceKey, Object unlinkedParent, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference, DependencyObject boundaryElement, InheritanceBehavior& inheritanceBehavior, Object& source)
в System.Windows.FrameworkElement.FindResourceInternal(FrameworkElement fe, FrameworkContentElement fce, DependencyProperty dp, Object resourceKey, Object unlinkedParent, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference, DependencyObject boundaryElement, Boolean isImplicitStyleLookup, Object& source)
в System.Windows.StyleHelper.GetChildValueHelper(UncommonField`1 dataField, ItemStructList`1& valueLookupList, DependencyProperty dp, DependencyObject container, FrameworkObject child, Int32 childIndex, Boolean styleLookup, EffectiveValueEntry& entry, ValueLookupType& sourceType, FrameworkElementFactory templateRoot)
в System.Windows.StyleHelper.GetChildValue(UncommonField`1 dataField, DependencyObject container, Int32 childIndex, FrameworkObject child, DependencyProperty dp, FrugalStructList`1& childRecordFromChildIndex, EffectiveValueEntry& entry, ValueLookupType& sourceType, FrameworkElementFactory templateRoot)
в System.Windows.StyleHelper.GetValueFromStyleOrTemplate(FrameworkObject fo, DependencyProperty dp, EffectiveValueEntry& entry)
в System.Windows.FrameworkElement.GetRawValue(DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry& entry)
в System.Windows.FrameworkElement.EvaluateBaseValueCore(DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry& newEntry)
в System.Windows.DependencyObject.EvaluateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry newEntry, OperationType operationType)
в System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType)
в System.Windows.DependencyObject.InvalidateProperty(DependencyProperty dp, Boolean preserveCurrentValue)
в System.Windows.StyleHelper.InvalidateResourceDependents(DependencyObject container, ResourcesChangeInfo info, FrugalStructList`1& resourceDependents, Boolean invalidateVisualTreeToo)
в System.Windows.TreeWalkHelper.InvalidateStyleAndReferences(DependencyObject d, ResourcesChangeInfo info, Boolean containsTypeOfKey)
в System.Windows.TreeWalkHelper.OnResourcesChanged(DependencyObject d, ResourcesChangeInfo info, Boolean raiseResourceChangedEvent)
в System.Windows.FrameworkElement.OnAncestorChangedInternal(TreeChangeInfo parentTreeState)
в System.Windows.TreeWalkHelper.OnAncestorChanged(DependencyObject d, TreeChangeInfo info, Boolean visitedViaVisualTree)
в System.Windows.DescendentsWalker`1.StartWalk(DependencyObject startNode, Boolean skipStartNode)
в MS.Internal.PrePostDescendentsWalker`1.StartWalk(DependencyObject startNode, Boolean skipStartNode)
в System.Windows.TreeWalkHelper.InvalidateOnTreeChange(FrameworkElement fe, FrameworkContentElement fce, DependencyObject parent, Boolean isAddOperation)
в System.Windows.FrameworkElement.ChangeLogicalParent(DependencyObject newParent)
в System.Windows.FrameworkElement.AddLogicalChild(Object child)
в System.Windows.Controls.ContentControl.OnContentChanged(Object oldContent, Object newContent)
в System.Windows.Controls.ContentControl.OnContentChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
в System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
в System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
в System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args)
в System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType)
в System.Windows.DependencyObject.InvalidateProperty(DependencyProperty dp, Boolean preserveCurrentValue)
в System.Windows.Data.BindingExpressionBase.Invalidate(Boolean isASubPropertyChange)
в System.Windows.Data.BindingExpression.TransferValue(Object newValue, Boolean isASubPropertyChange)
в System.Windows.Data.BindingExpression.Activate(Object item)
в System.Windows.Data.BindingExpression.AttachToContext(AttachAttempt attempt)
в System.Windows.Data.BindingExpression.MS.Internal.Data.IDataBindEngineClient.AttachToContext(Boolean lastChance)
в MS.Internal.Data.DataBindEngine.Task.Run(Boolean lastChance)
в MS.Internal.Data.DataBindEngine.Run(Object arg)
в MS.Internal.Data.DataBindEngine.OnLayoutUpdated(Object sender, EventArgs e)
в System.Windows.ContextLayoutManager.fireLayoutUpdateEvent()
в System.Windows.ContextLayoutManager.UpdateLayout()
в System.Windows.UIElement.UpdateLayout()
в ActiproSoftware.Windows.Controls.Docking.DockingWindowContainer.FocusSelectedWindow(Boolean #YEf)
в ActiproSoftware.Windows.Controls.Docking.TabbedMdiHost.#bx(DockingWindow #sb, Boolean #an)
в ActiproSoftware.Windows.Controls.Docking.TabbedMdiHost.#4w(DockingWindow #sb, Boolean #an)
в ActiproSoftware.Windows.Controls.Docking.DockSite.Activate(DockingWindow #sb, Boolean #an)
в ActiproSoftware.Windows.Controls.Docking.DockSite.Open(DockingWindow #sb, Boolean #2jf, Boolean #an)
в ActiproSoftware.Windows.Controls.Docking.DockingWindow.Activate(Boolean focus)
в StockSharp.Hydra.MainWindow.CurrentTasks_OnSelectionChanged(Object sender, EventArgs eventArgs)
в System.Windows.Controls.SelectionChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
в System.Windows.Controls.ListBox.OnSelectionChanged(SelectionChangedEventArgs e)
в System.Windows.Controls.Primitives.Selector.InvokeSelectionChanged(List`1 unselectedInfos, List`1 selectedInfos)
в System.Windows.Controls.Primitives.Selector.SelectionChanger.End()
в System.Windows.Controls.Primitives.Selector.SelectionChanger.SelectJustThisItem(ItemInfo info, Boolean assumeInItemsCollection)
в System.Windows.Controls.Primitives.Selector.OnSelectedIndexChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
в System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
в System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
в System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args)
в System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType)
в System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType, Boolean isInternal)
в System.Windows.DependencyObject.SetValue(DependencyProperty dp, Object value)
в StockSharp.Hydra.UserConfig.LoadLayout()


1. Что нужно поправить, чтобы Гидра запустилась?

И более общий вопрос:
Необходимо запускать источник смартком3.0 за несколько часов до начала торгов, т.к. ухожу на работу гораздо раньше. Запускаю Гидру. Нажимаю Старт. Спустя где-то полчаса после этого смартком видимо сбрасывает соединение и импорт не происходит.
Фрагмент лога файла смартком:
Цитата:
08:11:37.345| |SmartTrader|Инструмент RIU4@FORTS зарегистрирован на получение рыночных данных для Level1.
08:11:37.870| |SmartCOM |Для RIU4@FORTS загружено 1 MarketDepth.
08:32:06.073|Error |SmartTrader|System.InvalidOperationException: Подключение в состоянии Connected получило неожиданное сообщение типа 'DisconnectMessage'. ---> System.InvalidOperationException: connection closed by server (213.247.232.238:48091)
--- Конец трассировки внутреннего стека исключений ---
08:32:06.074|Error |SmartCOM |System.InvalidOperationException: Подключение в состоянии Connected получило неожиданное сообщение типа 'DisconnectMessage'. ---> System.InvalidOperationException: connection closed by server (213.247.232.238:48091)
--- Конец трассировки внутреннего стека исключений ---
08:32:06.863|Error |SmartCOM |System.InvalidOperationException: Подключение в состоянии Connected получило неожиданное сообщение типа 'DisconnectMessage'. ---> System.InvalidOperationException: connection closed by server (213.247.232.238:48091)
--- Конец трассировки внутреннего стека исключений ---
в StockSharp.Hydra.Core.MarketDataConnector`1.ThrowIfError()
в StockSharp.Hydra.Core.MarketDataConnector`1.GetTrades()
в StockSharp.Hydra.Core.ConnectorHydraTask`1.SaveValues[T](Func`1 getNewValues, Action`2 saveValues)
в StockSharp.Hydra.Core.ConnectorHydraTask`1.ProcessNewData()
в StockSharp.Hydra.Core.ConnectorHydraTask`1.OnProcess()
в StockSharp.Hydra.Core.BaseHydraTask.<Start>b__0()


Насколько я помню, эта проблема возникала у меня еще год назад и я так и не нашел способ ее побороть. Сейчас пробую AutoIt и Планировщик заданий, чтобы кнопка Старт нажималась минут за 10 до начала торгов, но стала возникать ошибка, описанная первой в посте.

2. Как можно избежать такой ошибки? Можно ли как-то автоматизировать запуск в определенное время?

И еще один вопрос, который стал только актуальней:
3. Можно ли бэкапить настройки Гидры и источников, чтобы как-то минимизировать потери при разного рода ошибках?
Например, при сбросе настроек приходится заново настраивать все инструменты.

С уважением,
Олег.

Теги:


Спасибо:




17 Ответов
Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 09.09.2014
Ответить


Судя по фантомности ошибки, она является следствием, а не первопричиной. Посмотрите в лог-файл. Не было ли каких-то других сообщений до этой ошибки.
Спасибо:

SoWar2

Фотография
Курсы
Дата: 10.09.2014
Ответить


Михаил, добрый день.
Да, вы правы. Ошибки были и другие. Обычно проблемы начинаются, когда по каким-либо причинам приходится принудительно завершать работу Гидры.
Вложил логи за день, когда начались ошибки. Предыдущий день завершился без ошибок.
2014_09_08.rar 7 KB (0)
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 10.09.2014
Ответить


У вас файл с базой данных занят другим процессом. Возможно вторая Гидра запущена.
Спасибо:

SoWar2

Фотография
Курсы
Дата: 10.09.2014
Ответить


Михаил Сухов Перейти
У вас файл с базой данных занят другим процессом. Возможно вторая Гидра запущена.


Я уже проверял эту версию. После перезагрузки все блокировки должны были сняться, но все равно ошибка та же.
Цитата:
08:09:29.088|Error |S#.Data |System.InvalidOperationException: При просмотре дерева превышена логическая глубина дерева. Возможно, в дереве имеется циклическая зависимость.

Возможно по ошибке когда-то была попытка запустить вторую гидру без ожидания завершения работы первой. Но могла ли такая ситуация повредить базу или какой-то файл настолько, чтобы был невозможен старт гидры с разблокированной базой.

Не могу сказать, что решил проблему, т.к. полная переустановка это все же не решение. :) Но вот мои действия.
Установил все заново, сохранив и удалив файлы в "Мои документы" и в папке установки. Потом заменил базу Stocksharp.db в "Мои документы" на старую. Запустил гидру и она подхватила старые установки инструментов и коннекторов. Это порадовало. Стартовал задачу - заработало со второго раза. В первый старт смартком выдал ошибку в логах.
Цитата:

22:02:28.923| |SmartCOM |Инициализируется.
22:02:28.927| |SmartCOM |Перешел в состояние Starting.
00:00:00.000| |SmartTrader|Connect
22:02:32.891|Error |SmartCOM |System.InvalidOperationException
22:03:32.876|Error |SmartCOM |При запуске источника произошел максимально допустимый таймаут. Источник будет остановлен.
22:03:32.888| |SmartCOM |Перешел в состояние Stopped.
22:03:40.902| |SmartCOM |Инициализируется.
22:03:40.905| |SmartCOM |Перешел в состояние Starting.
00:00:00.000| |SmartTrader|Connect
22:03:44.753| |SmartTrader|StartExport
22:03:44.758| |SmartTrader|Создан новый портфель BP111111-RF-01.
22:03:44.781| |SmartCOM |Перешел в состояние Started.
22:03:44.845| |SmartCOM |Получен инструмент AUH5@FORTS.
22:03:44.846| |SmartCOM |Получен инструмент BRF5@FORTS.
22:03:45.065| |SmartCOM |Получен инструмент BR86BI4@FORTS.
...


Если есть более разумный способ решения проблемы - буду рад услышать.

В связи с этим, Михаил, могли бы вы рассказать, что за файлы находятся в папках инструментов? Что из этого можно безболезненно удалить?

Вопрос возник, т.к. мне хочется очистить архив от трех дней, когда импорт осуществлялся урывками, т.е. данные не будут представлять интереса при экспорте. Попробовал в меню "Дополнительно" -> "Очистить данные". Выбрал период, выбрал Все инструменты, выполнилось без ошибок. Но потом пробую экспортировать, а те дни что я выбрал для очистки содержат данные. Удалять в ручную в папке каждого инструмента не рискнул, т.к. боюсь как-то нарушить работу базы.
Автор топика
Спасибо:

SoWar2

Фотография
Курсы
Дата: 10.09.2014
Ответить


Нет, не работает надежно:
Цитата:
22:47:22.423| |SmartCOM |Инициализируется.
22:47:22.428| |SmartCOM |Перешел в состояние Starting.
00:00:00.000| |SmartTrader|Connect
22:47:25.192| |SmartTrader|StartExport
22:47:25.197| |SmartTrader|Создан новый портфель BP1111111-RF-01.
22:47:25.222| |SmartCOM |Перешел в состояние Started.
22:47:25.222|Error |SmartTrader|System.InvalidOperationException: SmartCOM не поддерживает одновременный поиск инструментов по нескольким запросам.
22:47:25.223|Error |SmartCOM |System.InvalidOperationException: SmartCOM не поддерживает одновременный поиск инструментов по нескольким запросам.
22:47:25.454|Error |SmartCOM |System.InvalidOperationException: SmartCOM не поддерживает одновременный поиск инструментов по нескольким запросам.
в StockSharp.Hydra.Core.MarketDataConnector`1.ThrowIfError()
в StockSharp.Hydra.Core.MarketDataConnector`1.GetTrades()
в StockSharp.Hydra.Core.ConnectorHydraTask`1.SaveValues[T](Func`1 getNewValues, Action`2 saveValues)
в StockSharp.Hydra.Core.ConnectorHydraTask`1.ProcessNewData()
в StockSharp.Hydra.Core.ConnectorHydraTask`1.OnProcess()
в StockSharp.Hydra.Core.BaseHydraTask.<Start>b__0()
22:49:48.945| |SmartCOM |Перешел в состояние Stopping.
22:49:48.961| |SmartCOM |Перешел в состояние Stopped.


Нажимаю Старт - ошибка такая же. Перезапускаю - вроде работает.

Т.е. задача отложенного старта задачи так и не решена. Надо лично присутствовать при запуске задачи, чтобы быть уверенным, что все заработало.
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 11.09.2014
Ответить


У вас проблема с блокировкой файла БД. Написано русскими словами в лог файле, что вы приложили. Решить ее можете только вы.
Спасибо:

SoWar2

Фотография
Курсы
Дата: 11.09.2014
Ответить


Михаил Сухов Перейти
У вас проблема с блокировкой файла БД. Написано русскими словами в лог файле, что вы приложили. Решить ее можете только вы.

Михаил,
в приложенном мною архиве ошибки с блокировкой случились поздно вечером, когда я пришел домой и обнаружил, что запущенная мною утром гидра ничего не делала весь день из-за утренней ошибки в смарткоме:
Цитата:
08:11:37.345| |SmartTrader|Инструмент RIU4@FORTS зарегистрирован на получение рыночных данных для Level1.
08:11:37.870| |SmartCOM |Для RIU4@FORTS загружено 1 MarketDepth.
08:32:06.073|Error |SmartTrader|System.InvalidOperationException: Подключение в состоянии Connected получило неожиданное сообщение типа 'DisconnectMessage'. ---> System.InvalidOperationException: connection closed by server (213.247.232.238:48091)
--- Конец трассировки внутреннего стека исключений ---
08:32:06.074|Error |SmartCOM |System.InvalidOperationException: Подключение в состоянии Connected получило неожиданное сообщение типа 'DisconnectMessage'. ---> System.InvalidOperationException: connection closed by server (213.247.232.238:48091)
--- Конец трассировки внутреннего стека исключений ---
08:32:06.863|Error |SmartCOM |System.InvalidOperationException: Подключение в состоянии Connected получило неожиданное сообщение типа 'DisconnectMessage'. ---> System.InvalidOperationException: connection closed by server (213.247.232.238:48091)
--- Конец трассировки внутреннего стека исключений ---
в StockSharp.Hydra.Core.MarketDataConnector`1.ThrowIfError()
в StockSharp.Hydra.Core.MarketDataConnector`1.GetTrades()
в StockSharp.Hydra.Core.ConnectorHydraTask`1.SaveValues[T](Func`1 getNewValues, Action`2 saveValues)
в StockSharp.Hydra.Core.ConnectorHydraTask`1.ProcessNewData()
в StockSharp.Hydra.Core.ConnectorHydraTask`1.OnProcess()
в StockSharp.Hydra.Core.BaseHydraTask.<Start>b__0()
21:56:01.380| |SmartCOM |Перешел в состояние Stopping.


Я попробовал перезапустить гидру и, видимо, тогда и случилась проблема с блокировкой, которая вызвала череду других ошибок, т.к. пришлось несколько раз принудительно завершать работу гидры. Забудем про вечерние ошибки.

Возможно в утренней ошибке виноват смартком. Вам видней. Но ведь гидру можно заставить переподключиться в этом случае, а не просто замирать в ожидании действий пользователя.

И, повторюсь, эта ошибка случалась регулярно год назад именно из-за запуска задачи задолго до начала торгов. Если запускать ее минут за 15, то ошибки не возникает. Возможно где-то происходит таймаут. Опять же, вам видней.

Я очень заинтересован в решении данной проблемы, т.к. те способы, которыми я не всегда успешно пытаюсь ее решить, вроде AutoIt3, ну очень костыльные и плохо работают. Ошибка воспроизводима. Если надо что-то выложить/посмотреть/включить/сделать - я готов.


Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 14.09.2014
Ответить


Я не уверен, что понял вас. Вы ошибку с блокировкой устранили или нет?
Спасибо:

SoWar2

Фотография
Курсы
Дата: 15.09.2014
Ответить


Михаил Сухов Перейти
Я не уверен, что понял вас. Вы ошибку с блокировкой устранили или нет?

Да, конечно. Иначе бы гидра не запускалась.
Мне кажется, что ошибка из предыдущего поста не имеет отношения к блокировке.

Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 15.09.2014
Ответить


SoWar2 Перейти
Михаил Сухов Перейти
Я не уверен, что понял вас. Вы ошибку с блокировкой устранили или нет?

Да, конечно. Иначе бы гидра не запускалась.
Мне кажется, что ошибка из предыдущего поста не имеет отношения к блокировке.



Тогд приведите текст новой ошибки, не связанной с блокировкой, как вы считаете.
Спасибо:

SoWar2

Фотография
Курсы
Дата: 19.09.2014
Ответить


Михаил,
файл вложил. Впервые такое, но опять дисконнект от смарткома. В данном случае в процессе работы, а не в ожидании начала сессии.
2014_09_19.rar 377 KB (0)
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 19.09.2014
Ответить


SoWar2 Перейти
Михаил,
файл вложил. Впервые такое, но опять дисконнект от смарткома. В данном случае в процессе работы, а не в ожидании начала сессии.


А что смотреть в логах? Какую строчку?
Спасибо:

SoWar2

Фотография
Курсы
Дата: 20.09.2014
Ответить


Михаил Сухов Перейти
SoWar2 Перейти
Михаил,
файл вложил. Впервые такое, но опять дисконнект от смарткома. В данном случае в процессе работы, а не в ожидании начала сессии.


А что смотреть в логах? Какую строчку?


76309 в логе смарткома. Это самый конец файла. Специально привел полный лог, чтобы не было таких недоразумений как с прошлым логом: блокировка файла была вечером, а проблемы начались утром.

Михаил, хочется очень простой вещи, которую вы несомненно подразумевали, когда писали эту ценную программу: она должна загрузить данные о торгах.
По факту лично у меня этого сделать не получается. Идут постоянные "неожиданные сообщения о разъединении". После этого импорт данных останавливается и не возобновляется. Т.е. после остановки в 11:44:15.256 и до моего прихода с работы и остановки "импорта" в 20:59:45.086 никакой информации не собиралось.
Я не программирую на сишарпе и его exceptions мне ни о чем не говорят, но мне кажется, что попытка совершить реконнект быть должна. Возможно это не отражается в логах и она/они все были неудачными. Вам видней, как я уже неоднократно говорил. Но хотелось бы знать что с этим делать.
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 20.09.2014
Ответить


SoWar2 Перейти

Идут постоянные "неожиданные сообщения о разъединении".


Если у вас ошибка с разрывом соединения, а не с блокировкой БД, то это вам нужно смотреть логи смарткома. Именно смарткома, а не гидры. И решать ситуацию, почему идет разрыв подключения.

Сообщение в логе о неожиданном разрыве идет из-за того, что смартком разорвал подключение. Можно конечно не писать это сообщение, если оно вас смущает, но реально ситуация не изменится - между вашим компьютером и сервером брокера было утрачено соединение.
Спасибо:

SoWar2

Фотография
Курсы
Дата: 22.09.2014
Ответить


Михаил Сухов Перейти
SoWar2 Перейти

Идут постоянные "неожиданные сообщения о разъединении".


Если у вас ошибка с разрывом соединения, а не с блокировкой БД, то это вам нужно смотреть логи смарткома. Именно смарткома, а не гидры. И решать ситуацию, почему идет разрыв подключения.

Сообщение в логе о неожиданном разрыве идет из-за того, что смартком разорвал подключение. Можно конечно не писать это сообщение, если оно вас смущает, но реально ситуация не изменится - между вашим компьютером и сервером брокера было утрачено соединение.


Михаил, не подскажете где можно логи смарткома посмотреть? Не нашел к сожалению.

А сама гидра не может реконнектится при такой ошибке? Первое соединение она же как-то устанавливает.
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 22.09.2014
Ответить


Логи, причины разрывов и т.д. - это все к создателям - АйТи Инвест.
Спасибо:

SoWar2

Фотография
Курсы
Дата: 29.09.2014
Ответить


Михаил Сухов Перейти
Логи, причины разрывов и т.д. - это все к создателям - АйТи Инвест.


Михаил, добрый день.

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

Можно ли доработать коннектор гидры к смарткому, чтобы он переустанавливал соединение при получении сообщения о его разрыве? И планируете ли Вы это сделать?

Автор топика
Спасибо: Mikhail Sukhov


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy