Local evaluator on Windows not working

#1

I followed all the instructions to run evaluator on Windows local system.
However, when I type “flatland-evaluator --tests /path/to/test-env-data/”, I have “Ran out of input” error as the following :

[‘Test_9\Level_1.pkl’, ‘Test_1\Level_0.pkl’, ‘Test_9\Level_0.pkl’, ‘Test_0\Level_1.pkl’, ‘Test_3\Level_1.pkl’, ‘Test_8\Level_0.pkl’, ‘Test_1\Level_1.pkl’, ‘Test_2\Level_1.pkl’, ‘Test_3\Level_0.pkl’, ‘Test_8\Level_1.pkl’, ‘Test_6\Level_0.pkl’, ‘Test_7\Level_1.pkl’, ‘Test_2\Level_0.pkl’, ‘Test_0\Level_0.pkl’, ‘Test_5\Level_0.pkl’, ‘Test_6\Level_1.pkl’, ‘Test_4\Level_1.pkl’, ‘Test_4\Level_0.pkl’, ‘Test_5\Level_1.pkl’, ‘Test_7\Level_0.pkl’]
Listening at : flatland-rl::FLATLAND_RL_SERVICE_ID::commands
Traceback (most recent call last):
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\runpy.py”, line 193, in _run_module_as_main
main”, mod_spec)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\runpy.py”, line 85, in run_code
exec(code, run_globals)
File "C:\Users\bonav\Anaconda3\envs\flatland-rl\Scripts\flatland-evaluator.exe_main
.py", line 9, in
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\click\core.py”, line 764, in call
return self.main(*args, **kwargs)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\click\core.py”, line 717, in main
rv = self.invoke(ctx)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\click\core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\click\core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\flatland\cli.py”, line 81, in evaluator
grader.run()
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\flatland\evaluators\service.py”, line 574, in run
command = self.get_next_command()
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\flatland\evaluators\service.py”, line 244, in get_next_command
command = self._get_next_command(_redis)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\timeout_decorator\timeout_decorator.py”, line 91, in new_function
return timeout_wrapper(*args, **kwargs)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\site-packages\timeout_decorator\timeout_decorator.py”, line 146, in call
self.__process.start()
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\multiprocessing\process.py”, line 105, in start
self._popen = self._Popen(self)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\multiprocessing\context.py”, line 223, in _Popen
return _default_context.get_context().Process._Popen(process_obj)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\multiprocessing\context.py”, line 322, in _Popen
return Popen(process_obj)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\multiprocessing\popen_spawn_win32.py”, line 65, in init
reduction.dump(process_obj, to_child)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\multiprocessing\reduction.py”, line 60, in dump
ForkingPickler(file, protocol).dump(obj)
_pickle.PicklingError: Can’t pickle <function FlatlandRemoteEvaluationService._get_next_command at 0x000001F759D59EA0>: it’s not the same object as flatland.evaluators.service.FlatlandRemoteEvaluationService._get_next_command
Traceback (most recent call last):
File “”, line 1, in
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\multiprocessing\spawn.py”, line 105, in spawn_main
exitcode = _main(fd)
File “c:\users\bonav\anaconda3\envs\flatland-rl\lib\multiprocessing\spawn.py”, line 115, in _main
self = reduction.pickle.load(from_parent)
EOFError: Ran out of input

Does anyone have same problem with me ?

Thanx :slight_smile:

#2

I have a feeling that the pickle files you are using are corrupt somehow :confused: Or the dataset directory paths are not properly set.

Are you correctly specifying the /path/to/test-env-data/ ?