После обновления, каждую секунду в лог валятся ошибки:
15:07:24 System.ArgumentOutOfRangeException: Version's parameters must be greater than or equal to zero.
Parameter name: major
at System.Version..ctor(Int32 major, Int32 minor)
at StockSharp.Algo.Storages.LocalMarketDataDrive.#=q3RWgeZV6jqIbguN8GMAf4bnnFhp_rSjYKklpDS3gJM0=.#=qguiqrWv51yhPsRLmtoG90A==()
at StockSharp.Algo.Storages.LocalMarketDataDrive.#=q3RWgeZV6jqIbguN8GMAf4bnnFhp_rSjYKklpDS3gJM0=.#=q_Nbxf9vjR8NHWPlouYhMsQ==()
at System.Lazy`1.CreateValue()
--- End of stack trace from previous location where exception was thrown ---
at System.Lazy`1.get_Value()
at StockSharp.Algo.Storages.LocalMarketDataDrive.#=q3RWgeZV6jqIbguN8GMAf4bnnFhp_rSjYKklpDS3gJM0=.#=q9_4Utt6iWY9WHLESI9zTjg==(DateTime #=qEyA8AkIXDeSg13G0RY04ww==, Action`1 #=q7wyGEBiIyAaqsIAuA9eOww==)
at #=qDP2id48xwC3$dSS$A7FO$gbgnfNjtgBVtXfdz5sBg0qMhuwEPK4ETv5hNMSsDPUT.#=qgqfGTwxq7Now2x73N5Flng==(DateTime #=q2868YZdC3HbAElbG2jTpHg==, #=qqPJ48dYE752v0nn4CnQKCA==[] #=qSKZVmZh4$hWeS9lpv0Zb2w==, Boolean #=qlJ3kq_Ey7cBlspOsNBCCCA==)
at #=qDP2id48xwC3$dSS$A7FO$gbgnfNjtgBVtXfdz5sBg0qMhuwEPK4ETv5hNMSsDPUT.Save(IEnumerable`1 #=qCHOdYY7BCxHn$Pj$tkobUw==)
at StockSharp.Hydra.Core.BaseHydraTask.SafeSave[T](Security security, IEnumerable`1 values, Func`2 getTime, IEnumerable`1 errorChecks, Func`3 getStorage)
Comentários (16)
Entrar ou Criar conta, Faça login ou cadastre-se para deixar um comentário
Была такая
Судя по всему я неправильно тогда ответил. Сейчас посмотрел стэк трейс. Падает из-за того, что первые два байта в файле содержат отрицательные значения. Или файл поврежден, или это не файл в формате S#.
Какие могут быть варианты как убрать эту ошибку?
Уточнение. Не файл с данными, а файл-cache с датами. Оканчивается на dates.bin
ну уж в этот файл точно никто не лазит, кроме гидры. Как избавится от ошибки? или теперь вся база полетела?
Удалить файл. Но поврежден он в следствии чего-то. Может винт начал сыпаться. Может еще что. Может Windows bin файлы как-то по своему использует.
ну не удалять же всю базу, каждый раз когда переходишь на новую версию?
как узнать который из *dates.bin надо удалить? и что повлечет за собой его удаление? Гидра пересоздаст этот файл или все данные будут считаться потерянными?
Перезапустил Гидру, утром как я понимаю, начался новый *dates.bin? Но ошибка осталась старой
Если ничего не было сделано, то ничего и не изменится. Разве не логично?😉
Михаил, ответь пожалуйста на вопрос, тогда и будет возможность что-либо изменить.
Там 3 файла: -quotesdates.bin -tradesdates.bin -securitydates.bin
Я бы удалил все, у которых первый 2 байта отрицательный.
ок, а вторая часть вопроса?
Я не очень понимаю как проверить отрицательность первых 2х байтов. Удалил все 3 файла. Ошибка по прежнему осталась
Их должно быть поболее.
Последние 2 ответа противоречат друг другу.
Вопрос все еще не решен: что надо настроить, чтобы не было ошибки? какие именно файлы надо удалять? (ответ удалить все файлы с отрицательным первым байтом может быть и верен, но я не знаю как искать отрицательные байты в файлах)