may have been in progress in another thread when fork() was called・rails consoleが中断してしまう

単純にrails consoleからUser.find(...)的なことをしようとしたら以下のエラーが発生してコンソールが中断してしまうことがありました。

rails c
> User.find(...)
[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called

こちら(https://github.com/rails/rails/issues/38560)のissueを確認して、解決しました。

解決法

MacOSで発生するエラーみたいですね。 環境変数の設定とspring stopすると一旦は解決しました。

export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
spring stop

OBJC_DISABLE_INITIALIZE_FORK_SAFETYmacOSで使用される環境変数みたいです。 詳しいことが分かっていないので、調べた後に加筆したいと思います。