Skip to content

Make StoreExecutor compatible with Dask Client #607

@gpauloski

Description

@gpauloski

It works until you try to shutdown the StoreExecutor.

Traceback (most recent call last):
  File "/home/jgpaul/workspace/hppss24-proxystore/demo/3-executor.py", line 61, in <module>
    raise SystemExit(main())
  File "/home/jgpaul/workspace/hppss24-proxystore/demo/3-executor.py", line 45, in main
    with StoreExecutor(client, store, should_proxy=ProxyType(numpy.ndarray)) as executor:
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 649, in __exit__
    self.shutdown(wait=True)
  File "/home/jgpaul/workspace/hppss24-proxystore/demo/venv/lib/python3.10/site-packages/proxystore/store/executor.py", line 377, in shutdown
    self.executor.shutdown(wait=wait, cancel_futures=cancel_futures)
TypeError: Client.shutdown() got an unexpected keyword argument 'wait'

I think this could be solved by calling shutdown if isinstance(executor, Executor), then try and call close() if the executor has that attributed, otherwise make a warning.

Metadata

Metadata

Assignees

Labels

enhancementNew features or improvements to existing functionality

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions