Skip to content
Snippets Groups Projects
  • Masood Malekghassemi's avatar
    cbd1bce4
    Fix two ways tests can hang · cbd1bce4
    Masood Malekghassemi authored
    Both have to do with the test runner's handling of the tests. With one
    it's the read thread somehow outliving the other threads (e.g. with
    ctrl-C). The other is due to a filled OS-level pipe's buffer causing a
    block while code is still holding the GIL in some gRPC core function. We
    can't empty the buffer from Python because the GIL is held, and the OS
    can't unblock because it's waiting for the buffer to get cleared:
    deadlock.
    cbd1bce4
    History
    Fix two ways tests can hang
    Masood Malekghassemi authored
    Both have to do with the test runner's handling of the tests. With one
    it's the read thread somehow outliving the other threads (e.g. with
    ctrl-C). The other is due to a filled OS-level pipe's buffer causing a
    block while code is still holding the GIL in some gRPC core function. We
    can't empty the buffer from Python because the GIL is held, and the OS
    can't unblock because it's waiting for the buffer to get cleared:
    deadlock.