On OS X stdout and stderr are not the normal pipes to a tty.
They are instead redirected to asl which is how OS X display them in Console.app. See the setup_asl() function in the calibre source code. Since asl is a userspace daemon, it is quite possible that its failure modes are load dependant.
|