Ошибка с ets и чтением файлов
Отказ от ответственности: я не писал этот код, я просто пытаюсь заставить его работать.
Я пытаюсь получить код отсюда работает. Это 64-битная машина Ubuntu 14.04 с установленным Erlang.
Последовательность действий следующая: то, что я делаю, выглядит следующим образом:
- клонировать код
cd
в папку с кодом иerl
в терминалеmake:all([load]).
polis:create().
polis:start().
benchmarker:start(slidingwindow50).
Я получаю следующие ошибки:
4> benchmarker:start(slidingwindow50).
true Dimensions:4,
Plasticity:none Dimensions:4, Plasticity:none Dimensions:4,
Plasticity:none Dimensions:4, Plasticity:none Dimensions:4,
Plasticity:none Dimensions:4, Plasticity:none Dimensions:4,
Plasticity:none Dimensions:4, Plasticity:none Dimensions:4,
Plasticity:none Dimensions:4, Plasticity:none
Specie_Id:6.858114617542796e-10 Morphology:forex_trader
******** Population monitor started with parameters:{state,benchmark,test,[], [],undefined,undefined,
undefined,[],0,0,0,0,0, undefined,undefined, undefined,undefined,
undefined,undefined,0.5, 10,10,mathema,inf,10000, inf,<0.274.0>,false}
Initial Tot Evaluations:0
Started Started Started Started Started Started Started
5> =ERROR REPORT==== 16-Mar-2016::14:11:34 === Error in process
<0.287.0> with exit value:
{badarg,[{ets,last,['EURUSD15'],[]},{fx,init_state,5,[{file,"fx.erl"},{line,375}]},{fx,sim,3,[{file,"fx.erl"},{line,284}]}]}
=ERROR REPORT==== 16-Mar-2016::14:11:34 === Error in process <0.288.0> with exit value:
{badarg,[{ets,last,['EURUSD15'],[]},{fx,init_state,5,[{file,"fx.erl"},{line,375}]},{fx,sim,3,[{file,"fx.erl"},{line,284}]}]}
Пересматривая код fx.erl
показывает, что проблема, вероятно, связана с ets
часть и .txt
файл не читается с диска и в таблицу в памяти.
Обновление: я пытался исследовать функцию fx
, До сих пор у меня были такие результаты:fx:sim(anything)
выводит "Запущено" и делает оболочку невосприимчивой;fx:init().
результаты в
Инициализация валютных таблиц FX:[метаданные,'EURUSD15','EURUSD30','EURUSD60'] Метаданные FX и таблицы валют инициализированы и записаны в файл. Хорошо
fx:loop().
выводит много
Новая запись вставлена в таблицу: "EURUSD15"
с последней строкой
Новое обновление FOREX_DB, начиная с:{2009,6,16,7,30,0,15}
а потом
= ОТЧЕТ ОБ ОШИБКАХ ==== 22 марта 2016 года::16:41:26 === Ошибка в процессе <0.357.0> со значением выхода: {badarg,[{fx,insert_ForexRaw,2,[{file,"fx.erl"},{линия,767}]},{FX, обновления,1,[{файл," fx.erl "}, {линия,698}]},{Д, сердцебиение,3,[{файл, "fx.erl"}, {линия,692}]}]}
Бег ets:i().
после fx:init().
не показывает таблицу с именем EURUSD15
,
Почему это может быть, и как я могу это исправить?
PS Если будет найдено рабочее решение, я собираюсь попросить объединить изменения с исходным кодом (в основном, я попробую push-запрос).
1 ответ
Я знаком с этой платформой, и мы запускаем ее на наших машинах, мы использовали ее в качестве учебного материала в прошлом году.
Это происходит потому, что вы не запустили симулятор форекс до запуска бенчмаркера.