ловушка pg gem Trace/BPT: ошибка 5 в MAC OS X lion

Недавно я обновил своего снежного барса до льва, и в одном из моих приложений я получил

=> Booting WEBrick
=> Rails 3.0.4 application starting in development on http://0.0.0.0:4000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-08-16 17:47:27] INFO  WEBrick 1.3.1
[2011-08-16 17:47:27] INFO  ruby 1.9.2 (2011-07-09) [x86_64-darwin11.0.0]
[2011-08-16 17:47:27] INFO  WEBrick::HTTPServer#start: pid=3460 port=4000
Trace/BPT trap: 5

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

Кто-нибудь знает другой драгоценный камень для подключения к postgresql или какой-либо обходной путь?

РЕДАКТИРОВАТЬ: ОК, вот некоторые пояснения.

Я начал этот проект на снежном барсе, и он работал отлично, у меня был установлен rvm, pg gem, webrick и ruby ​​1.9.2-p180, я обновился до lion и продолжаю работать над другими проектами, когда придет время обновить этот проект, я получил ошибку Trace/BPT trap: 5, и сервер не дает никакой другой информации о том, что происходит. Я предполагаю, что это что-то очень низкого уровня, и интерпретатор ruby ​​даже не имеет возможности показать исключение, и это сообщение связано со STDIO.

Пытаясь исправить это, я: переустановил rvm, установил ruby ​​1.9.2-p290, переустановил postgresql, удалил и перестроил набор драгоценных камней для проекта, установил mongrel, и все равно приложение вылетает из сети, он получает первый веб-запрос, обратите внимание, что он работает на консоли рельсов.

РЕДАКТИРОВАТЬ 2: теперь он работает на ruby-1.8.7-352, поэтому, похоже, это проблема, связанная с 1.9.2, в MAC OS X 10.7.

РЕДАКТИРОВАТЬ 3: это проблема XCODE 4.1, связанная с компилятором llvm и «оптимизацией», которую он выполняет, когда необходимо построить с собственным расширением. Решение состоит в том, чтобы установить совместимый Xcode, дополнительную информацию можно найти на сайте RVM.


person radha    schedule 17.08.2011    source источник
comment
вам может потребоваться перекомпилировать/переустановить ваш postgres снова. вы используете доморощенный?   -  person corroded    schedule 17.08.2011
comment
также вам может потребоваться перекомпилировать ваш гем pg. ты пробовал переустанавливать?   -  person corroded    schedule 17.08.2011
comment
переустановил rvm переустановил postgresql при удалении установки pg я получил ошибку загрузки плагина RubyGems /Users/XXXXXXX/.rvm/gems/ruby- 1.9.2-p290@oloback/gems/yard-0.6.4/lib/rubygems_plugin.rb: неопределенный метод `overwrite_accessor' для Gem::Specification:Class (NoMethodError) и yard не работает, поскольку, поскольку я воссоздал набор драгоценных камней, переустановите pg gem и получите ту же ошибку. Я вижу ветку от 2010 года на трекере ошибок pg gem, где люди получили ту же ошибку на снежном барсе с помощью webrick. у меня нет других подсказок   -  person radha    schedule 17.08.2011
comment
это — это поток. Я также могу заставить консоль работать   -  person radha    schedule 17.08.2011
comment
проблема снежного барса может не относиться к вам, так как вы уже на льве   -  person corroded    schedule 17.08.2011
comment
подождите, я немного запутался, вы переустановили rvm, затем postgres, затем гем pg? а ломается где? не могли бы вы обновить вопрос с тем, что у вас есть? Благодарность!   -  person corroded    schedule 17.08.2011
comment
увидев что-то подобное - проверьте и эту ветку лев с проблемами rvm gcc"> stackoverflow.com/questions/8032824/   -  person andy boot    schedule 21.03.2012
comment
Я получил эту ошибку, когда установил точку останова в Postgres server process, а не backend process. Когда я отключаю точки останова, они исчезают. Так что, возможно, это связано с каким-то флагом отладки или чем-то еще.   -  person vaughan    schedule 14.07.2021


Ответы (2)


Я исправил это - это была простая проблема с отсутствием "gem 'pg'" в моем Gemfile. По разным причинам он был закомментирован.

person Anna Billstrom    schedule 13.10.2011
comment
У меня была аналогичная ситуация с фиктивным приложением в Rails Engine. Мне просто нужно было добавить require "pg" в мой application.rb. - person balexand; 10.10.2013

Попробуйте следующее:

gem uninstall pg
env ARCHFLAGS="-arch x86_64" gem install pg

У меня была такая же проблема, и это решение сработало для меня. Я использую Ruby 1.9.2 p136, Rails 3.0.1, Postgresql 9.0.4 и версию pg gem 0.11.0.

Я, конечно, предполагаю, что вы также правильно настроили свой Gemfile для использования «gem pg», и что у вас нет других активных драгоценных камней базы данных, и что у вас есть рабочая база данных, к которой вы можете получить доступ с помощью psql в сочетании. с правильно настроенным файлом database.yml в rails.

Надеюсь, это сработает для тебя, Эрик.

person eriklinde    schedule 03.09.2011
comment
Спасибо, но проблема связана с MAC OS X lion, это проблема XCODE 4.1, связанная с компилятором llvm и оптимизацией, которую он выполняет, когда возникает необходимость сборки с собственным расширением. Решение состоит в том, чтобы перейти на снежного барса, пока лев и xcode исправляются. - person radha; 16.09.2011