Comment 8 for bug 1712463

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to oslo.concurrency (master)

Reviewed: https://review.openstack.org/531493
Committed: https://git.openstack.org/cgit/openstack/oslo.concurrency/commit/?id=55e06261aa86c87c7c059fbddc97cdbaae06e8dd
Submitter: Zuul
Branch: master

commit 55e06261aa86c87c7c059fbddc97cdbaae06e8dd
Author: Matthew Treinish <email address hidden>
Date: Fri Jan 5 15:11:17 2018 -0500

    Add python_exec kwarg to processutils.execute()

    This commit adds a new kwarg to the process_utils.execute() function to
    specify the python executable to use when launching python to check
    prlimits. This is necessary when processutils.execute() is called from
    inside an API server running with uwsgi. In this case sys.executable is
    uwsgi (because uwsgi links libpython.so and is actually the interpreter)
    This doesn't work with the execute() function because it assumes the
    cpython interpreter CLI is used for the arguments it uses to call the
    prlimits module. To workaround this and enable API servers that may run
    under uwsgi to use this those applications can simply pass in an
    executable to use.

    Longer term it might be better to migrate the prlimits usage to call
    multiprocessing instead of subprocessing python. But that would require
    a more significant rewrite of both processutils and prlimit to
    facilitate that.

    Change-Id: I0ae60f0b4cc3700c783f6018e837358f0e053a09
    Closes-Bug: #1712463