1

I've been having problems with Phusion Passenger since upgrading to 10.13. I've read several articles about the root cause of this issue (most of which are over my head, quite frankly) but I was under the impression that Passenger 5.1.12 was supposed to solve this problem. Nevertheless, it has not for me and Apache crashes with the following log entry:

httpd[31444]: objc[31444]: +[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called. We cannot safely call it or ignore it in the fork() child process. Crashing instead. Set a breakpoint on objc_initializeAfterForkError to debug.

Any pointers would be greatly appreciated!

1 Answers1

2

If you want to stick with Apache, until Apple patches their build, apparently your options current are to:

  • Use a non-system apache (so it doesn't have apple's patches)
  • Set the OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES env var to the apache launchd plist (requires disabling SIP)
  • Add PassengerHighPerformance on to your virtualhost if your app can work that way
  • Use a case-sensitive filesystem (requires a fresh install of macOS)

None of those sounded particularly attractive to me, so I installed and migrated over to nginx (I've been meaning to anyway, for some time now).

fractious
  • 1,642
  • 16
  • 30
  • I saw these suggestions too and I tried the PassengerHighPerformance directive to no avail. I was hoping that the recently released Server 5.5 was going to do the trick, but it did not. Like you, I'm in the process of moving some things—in my case to Amazon EC2—so that'll probably be the eventual solution for me unless something changes on Apple's end soon. – user2965240 Jan 29 '18 at 17:16