-
-
Notifications
You must be signed in to change notification settings - Fork 212
Description
I just installed OpenML on a new machine, running Windows 10 and Python 3.6.3. I installed the master branch as of today (4.1.2018). I can not retrieve a task, as the process simply freezes when I call get_task. MWE:
import openml
t = openml.tasks.get_task(3)
it seems to have to do with the locking mechanism, as interrupting this call gives the following stack trace:
File "\openml\tasks\functions.py", line 239, in get_task
dataset = get_dataset(task.dataset_id)
File "openml\datasets\functions.py", line 284, in get_dataset
lock_path=os.path.join(config.get_cache_directory(), 'locks'),
File "\lib\site-packages\fasteners-0.14.1-py3.6.egg\fasteners\process_lock.py", line 174, in __enter__
self.acquire()
File "\lib\site-packages\fasteners-0.14.1-py3.6.egg\fasteners\process_lock.py", line 156, in acquire
gotten = r(self._try_acquire, blocking, watch)
File "\lib\site-packages\fasteners-0.14.1-py3.6.egg\fasteners\_utils.py", line 91, in __call__
return fn(*args, **kwargs)
File "\lib\site-packages\fasteners-0.14.1-py3.6.egg\fasteners\process_lock.py", line 94, in _try_acquire
self.trylock()
It seems the process gets stuck trying to acquire the lock.
Removing the locking mechanism manually (editing out the code) resolves any lock-related issues.*
I am not sure if this means perhaps the issue is with oslo_concurrency.lockutils, or OpenML's use of it. Any idea?
* It introduces a new issue where an xmlquality is assumed to always have a value entry here, this turns out to be a false assumption, generating a KeyError.