What's your current support-target for Solaris?

/usr/xpg4/bin/sh might be another choice. Both installed virtually everywhere.  I don't know which is better.

FWIW, this patch would affect me directly, every day, I create tens of thousands of threads which turn around and spawn apps; quite often the apps are shell scripts which receive input from pipes.   That particular code has give me grief for years (since apr 0.9.1?), I've never been able to figure out which it mysteriously hangs every-now-and-then with a CPU busy-loop, particularly on busy days, and it often (almost always? always?) happens when I know the parent would have been due to handle a signal 15. Tested Solaris 8 - 10, no real differences.

So - if you suspect that changing the shell might improve my experience..I'll be patching my local 1.2 even before 1.3 comes out. :)


On Fri, Nov 21, 2008 at 3:14 PM, William A. Rowe, Jr. <wrowe@rowe-clan.net> wrote:
Attached is a patch, I'd like at least another two pairs of eyeballs before
applying to trunk and 1.3.

The first bit is most significant; /bin/sh on solaris simply sucks, and the
shell and invoked child simply do not handle pipes, signals and termination
correctly.  /bin/ksh is far more robust, and I believe we should switch to
this instead.

Second bit; simply doc clarifications.

Third bit; it seems a bit nasty that an unrecognized arg causes a shell path
search, the preference aught to be as literal as possible.  Since we had
already hit upon our match, this hack wastes a brief cycle for PROGRAM_PATH
invocations, and otherwise simply throws up on an unrecognized invocation.