Skip to content

RuntimeError: Shutdown must be called from main thread when interrupting server.py #8

@mearlboro

Description

@mearlboro

It seems JVM requires to be stopped from the same thread that started it. We need to find a way to implement a graceful exit that correctly shuts down the JVM.

Trace:

Traceback (most recent call last):
  File "/home/pi/.local/lib/python3.7/site-packages/flask/app.py", line 2095, in __call__
    return self.wsgi_app(environ, start_response)
  File "/home/pi/.local/lib/python3.7/site-packages/flask/app.py", line 2080, in wsgi_app
    response = self.handle_exception(e)
  File "/home/pi/.local/lib/python3.7/site-packages/flask/app.py", line 2077, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/pi/.local/lib/python3.7/site-packages/flask/app.py", line 1525, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/pi/.local/lib/python3.7/site-packages/flask/app.py", line 1523, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/pi/.local/lib/python3.7/site-packages/flask/app.py", line 1509, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
  File "camera/server/server.py", line 68, in stop_tracking
    proc.stop()
  File "/home/pi/camera/server/video.py", line 477, in stop
    self.calc.exit()
  File "/home/pi/camera/core/emergence.py", line 189, in exit
    jp.shutdownJVM()
  File "/home/pi/.local/lib/python3.7/site-packages/jpype/_core.py", line 329, in shutdownJVM
    raise RuntimeError("Shutdown must be called from main thread")
RuntimeError: Shutdown must be called from main thread

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions