Дворняга с Рубином 1.9 - PullRequest
2 голосов
/ 04 мая 2010

При запуске сервера я получаю эту странную ошибку после обновления до Ruby 1.9:

» [BUG] нарушение многопоточности в rb_gc () ruby 1.8.6 (2008-08-11) [i386-mswin32]

Это приложение запросило среду выполнения прекратить его необычным способом. Пожалуйста, обратитесь в службу поддержки приложения для получения дополнительной информации. «

Моя версия Mongrel 1.1.6, которая должна быть совместима с Ruby 1.9. У меня также все еще есть установка Ruby 1.8.6, поэтому я предполагаю, что по какой-то причине mongrel пытается получить к нему доступ и убивает ruby? Моя версия рельсов - 2.3.4, если это имеет значение.

Ответы [ 2 ]

5 голосов
/ 15 мая 2010

Я бы с подозрением относился к комментариям на вашем первоисточнике - большинство последних - это спам-комментарии, указывающие на ссылки, продающие обувь или сумки.

Из тех, кто сделал , и он не был спамером, обратите внимание, что они советуют изменить источник вашего драгоценного камня на http://gems.rubyinstaller.org или использовать пререлиз 1.2.0.

Лично я не могу придумать ни одной веской причины использовать Mongrel после 2008 года. Есть так много лучших вариантов. Thin, Unicorn и Passenger - все активно поддерживаются, долгое время были совместимы с 1.9, быстрее в типичных тестах и ​​имеют различные преимущества в своих функциях и простоте развертывания. Когда это произошло, дворняга был огромным шагом вперед, но теперь он немного антиквариат и не имеет явных преимуществ.

Просто ... все, кроме Уэбрика. На самом деле.

2 голосов
/ 04 мая 2010

, который должен быть совместим с Ruby 1,9

Есть что-то конкретное, что заставляет вас так думать? Несколько недель назад я установил, что Mongrel не работает с Ruby 1.9 в Windows. Я не верю, что Mongrel был успешно скомпилирован с gcc / mingw32, что требуется для Ruby 1.9.

Самый простой вариант - вернуться к WEBRick.

Также довольно просто использовать Thin , который сравним - и, возможно, быстрее, чем - Mongrel. Я обнаружил, что мне нужно собрать его, что потребует установки mingw. См. этот SO-ответ - будьте готовы к сборке до gem install thin, и все должно произойти хорошо. Тогда просто используйте thin start вместо ruby script/server.

...