diff options
author | Fred Hebert <mononcqc@ferd.ca> | 2015-11-14 14:56:56 +0000 |
---|---|---|
committer | Fred Hebert <mononcqc@ferd.ca> | 2015-11-14 14:56:56 +0000 |
commit | 5f7351d78473634e717c956362d233b8000854c4 (patch) | |
tree | e68233d9fa9daa3f41c3e01a554325f0537d1819 /priv/shell-completion | |
parent | bab807822575a5c4d7c069210889013d61e53fd3 (diff) |
Fix IO locking up in shell apps
Application masters are booted at the root of apps, and take over the
group leader role to redirect IO. To cut the chain short and properly
have their role inherited, they are their own leader, and keep a
reference to the old leader in their internal state, which we cannot
change.
This is done so process ownership to a given application can be
established, and allows to properly clean up resources outside the
supervision tree when an app is shut down.
This patch goes around and finds all processes whose group leaders are
application masters older than the new `user' process booted by the
shell providers, and swaps them with that new `user'. This lets the
application masters survive, and fixes the blocking IO issue
(resolving issue #899)
This may mean an incomplete clean up is down on application shutdown,
but that seems like a fair compromise.
Diffstat (limited to 'priv/shell-completion')
0 files changed, 0 insertions, 0 deletions