Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

execnet.gateway_base.DumpError: can't serialize <enum 'ExitCode'> #487

Closed
tuvshinot opened this issue Nov 12, 2019 · 5 comments
Closed

execnet.gateway_base.DumpError: can't serialize <enum 'ExitCode'> #487

tuvshinot opened this issue Nov 12, 2019 · 5 comments

Comments

@tuvshinot
Copy link

tuvshinot commented Nov 12, 2019

============================= test session starts=====================
platform win32 -- Python 3.7.2, pytest-5.2.0, py-1.8.0, pluggy-0.13.0 -- e:\tuvshinot\media_platform\bug_fixes\env\scripts\python.exe
cachedir: .pytest_cache
metadata: {'Python': '3.7.2', 'Platform': 'Windows-10-10.0.17134-SP0', 'Packages': {'pytest': '5.2.0', 'py': '1.8.0', 'pluggy': '0.13.0'}, 'Plugins': {'cov': '2.6.0', 'forked': '1.1.3', 'html': '1.19.0', 'metadata': '1.8.0', 'xdist': '1.24.1'}}
rootdir: E:\tuvshinot\media_platform\bug_fixes\broadcaster-test-automation, inifile: pytest.ini
plugins: cov-2.6.0, forked-1.1.3, html-1.19.0, metadata-1.8.0, xdist-1.24.1
gw0 I
[gw0] win32 Python 3.7.2 cwd: E:\tuvshinot\media_platform\bug_fixes\broadcaster-test-automation
[gw0] Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)]
gw0 [8]

scheduling tests via LoadScheduling

INTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\_pytest\main.py", line 191, in wrap_session
INTERNALERROR>     session.exitstatus = doit(config, session) or 0
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\_pytest\main.py", line 234, in _main
INTERNALERROR>     config.hook.pytest_collection(session=session)
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\hooks.py", line 286, in __call__
INTERNALERROR>     return self._hookexec(self, self.get_hookimpls(), kwargs)
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\manager.py", line 92, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook, methods, kwargs)
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\manager.py", line 86, in <lambda>
INTERNALERROR>     firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\callers.py", line 208, in _multicall
INTERNALERROR>     return outcome.get_result()
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\callers.py", line 80, in get_result
INTERNALERROR>     raise ex[1].with_traceback(ex[2])
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\callers.py", line 187, in _multicall
INTERNALERROR>     res = hook_impl.function(*args)
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\_pytest\main.py", line 244, in pytest_collection
INTERNALERROR>     return session.perform_collect()
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\_pytest\main.py", line 438, in perform_collect
INTERNALERROR>     self.config.pluginmanager.check_pending()
INTERNALERROR>   File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\manager.py", line 275, in check_pending
INTERNALERROR>     % (name, hookimpl.plugin),
INTERNALERROR> pluggy.manager.PluginValidationError: unknown hook 'pytest_logwarning' in plugin <__channelexec__.WorkerInteractor object at 0x0000016FA05122B0>
[gw0] node down: Traceback (most recent call last):
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1400, in _save
    dispatch = self._dispatch[tp]
KeyError: <enum 'ExitCode'>

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1084, in executetask
    do_exec(co, loc)  # noqa
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\xdist\remote.py", line 270, in <module>
    config.hook.pytest_cmdline_main(config=config)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\hooks.py", line 286, in __call__
    return self._hookexec(self, self.get_hookimpls(), kwargs)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\manager.py", line 92, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\manager.py", line 86, in <lambda>
    firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\callers.py", line 208, in _multicall
    return outcome.get_result()
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\callers.py", line 80, in get_result
    raise ex[1].with_traceback(ex[2])
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\callers.py", line 187, in _multicall
    res = hook_impl.function(*args)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\_pytest\main.py", line 228, in pytest_cmdline_main
    return wrap_session(config, _main)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\_pytest\main.py", line 221, in wrap_session
    session=session, exitstatus=session.exitstatus
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\hooks.py", line 286, in __call__
    return self._hookexec(self, self.get_hookimpls(), kwargs)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\manager.py", line 92, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\manager.py", line 86, in <lambda>
    firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\pluggy\callers.py", line 203, in _multicall
    gen.send(outcome)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\xdist\remote.py", line 45, in pytest_sessionfinish
    self.sendevent("workerfinished", workeroutput=self.config.workeroutput)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\xdist\remote.py", line 30, in sendevent
    self.channel.send((name, kwargs))
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 729, in send
    self.gateway._send(Message.CHANNEL_DATA, self.id, dumps_internal(item))
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1371, in dumps_internal
    return _Serializer().save(obj)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1389, in save
    self._save(obj)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1407, in _save
    dispatch(self, obj)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1494, in save_tuple
    self._save(item)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1407, in _save
    dispatch(self, obj)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1490, in save_dict
    self._write_setitem(key, value)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1484, in _write_setitem
    self._save(value)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1407, in _save
    dispatch(self, obj)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1490, in save_dict
    self._write_setitem(key, value)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1484, in _write_setitem
    self._save(value)
  File "e:\tuvshinot\media_platform\bug_fixes\env\lib\site-packages\execnet\gateway_base.py", line 1405, in _save
    raise DumpError("can't serialize {}".format(tp))
execnet.gateway_base.DumpError: can't serialize <enum 'ExitCode'>
@tuvshinot
Copy link
Author

i think it looks same as #464.

@tuvshinot
Copy link
Author

when i run single test it passes, but when run multiple it throws this.

@RonnyPfannschmidt
Copy link
Member

indeed, please update pytest-xdist and check fi it works afterwards

@tuvshinot
Copy link
Author

okey thanks, i will try this. and let you know )))

@cmarqu
Copy link

cmarqu commented Jan 8, 2020

I had this problem with pytest-xdist 1.26.1 and can confirm that it is fixed with 1.31.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants