Skip to content

RuntimeError: threads can only be started once #1254

@fabrizio5680

Description

@fabrizio5680

Expected behaviour:

While daemon running, I should still be able to run a manual execution.

Actual behaviour:

It's seeing process is there but crashes because of Runtime error regards threads.

Steps to reproduce:

  • Step 1: start daemon flexget daemon start -d
  • Step 2: run standard execution flexget execute --verbose

Log:

There is a FlexGet process already running for this config, sending execution there.
Traceback (most recent call last):
  File "/opt/bin/flexget", line 11, in <module>
    sys.exit(main())
  File "/opt/lib/python3.5/site-packages/flexget/__init__.py", line 42, in main
    manager.start()
  File "/opt/lib/python3.5/site-packages/flexget/manager.py", line 294, in start
    client.handle_cli(self.args)
  File "/opt/lib/python3.5/site-packages/rpyc/core/netref.py", line 196, in __call__
    return syncreq(_self, consts.HANDLE_CALL, args, kwargs)
  File "/opt/lib/python3.5/site-packages/rpyc/core/netref.py", line 71, in syncreq
    return conn.sync_request(handler, oid, *args)
  File "/opt/lib/python3.5/site-packages/rpyc/core/protocol.py", line 441, in sync_request
    raise obj
RuntimeError: threads can only be started once

========= Remote Traceback (1) =========
Traceback (most recent call last):
  File "/opt/lib/python3.5/site-packages/rpyc/core/protocol.py", line 305, in _dispatch_request
    res = self._HANDLERS[handler](self, *args)
  File "/opt/lib/python3.5/site-packages/rpyc/core/protocol.py", line 535, in _handle_call
    return self._local_objects[oid](*args, **dict(kwargs))
  File "/opt/lib/python3.5/site-packages/flexget/ipc.py", line 80, in exposed_handle_cli
    self.manager.handle_cli(options)
  File "/opt/lib/python3.5/contextlib.py", line 77, in __exit__
    self.gen.throw(type, value, traceback)
  File "/opt/lib/python3.5/site-packages/flexget/logger.py", line 88, in capture_output
    yield
  File "/opt/lib/python3.5/site-packages/flexget/ipc.py", line 80, in exposed_handle_cli
    self.manager.handle_cli(options)
  File "/opt/lib/python3.5/site-packages/flexget/manager.py", line 333, in handle_cli
    self.execute_command(command_options)
  File "/opt/lib/python3.5/site-packages/flexget/manager.py", line 365, in execute_command
    self.task_queue.start()
  File "/opt/lib/python3.5/site-packages/flexget/task_queue.py", line 35, in start
    self._thread.start()
  File "/opt/lib/python3.5/threading.py", line 840, in start
    raise RuntimeError("threads can only be started once")
RuntimeError: threads can only be started once

Additional information:

  • Flexget Version: 2.1.1
  • Python Version: 3.5
  • Installation method: pip install
  • OS and version: Android 4.4 AMLogic s805

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions