Tim Burke 8c0fd3f138 py3: Make seamless reloads work
Starting with Python 3.4, newly-created file descriptors are non-inheritable
[0], which causes trouble when we try to use a pipe for IPC. Fortunately, the
same PEP that implemented this change *also* provided a new API to mark file
descriptors as being inheritable -- so just do that.

While we're at it,

* Fix up the probe tests to work on py3
* Fix up the probe tests to work when policy-0 is erasure-coded
* Decode the bytes read so py3 doesn't log a b'pid'
* Log a warning if the read() is empty; something surely went wrong
  in the re-exec

[0] https://www.python.org/dev/peps/pep-0446/

Change-Id: I2a8a9f3dc78abb99bf9cbcf6b44c32ca644bb07b
Related-Change: I3e5229d2fb04be67e53533ff65b0870038accbb7
2019-12-11 01:07:19 +00:00
..
2019-12-11 01:07:19 +00:00
2019-11-15 10:25:47 +00:00