2017-04-06 9 views
0

Capistrano 3를 사용하여 AWS 배포, OS X 개발 및 Ubuntu에서의 배포를 관리하고 있습니다.pg gem 0.19에서 0.20로 업그레이드 - LoadError : 호환되지 않는 라이브러리 버전

나는 내 Gemfile을 업그레이드하고 번들 때마다 다음 문제로 계속 실행 :

01 rake aborted! 
    01 LoadError: incompatible library version - /var/www/<app_name>/shared/bundle/ruby/2.3.0/gems/pg-0.20.0/lib/pg_ext.so 
    01 /var/www/<app_name>/shared/bundle/ruby/2.3.0/gems/pg-0.20.0/lib/pg.rb:4:in `require' 
    01 /var/www/<app_name>/shared/bundle/ruby/2.3.0/gems/pg-0.20.0/lib/pg.rb:4:in `<top (required)>' 
    01 /usr/local/rvm/gems/[email protected]/gems/bundler-1.14.6/lib/bundler/runtime.rb:91:in `require' 
    01 /usr/local/rvm/gems/[email protected]/gems/bundler-1.14.6/lib/bundler/runtime.rb:91:in `block (2 levels) in require' 
    01 /usr/local/rvm/gems/[email protected]/gems/bundler-1.14.6/lib/bundler/runtime.rb:86:in `each' 
    01 /usr/local/rvm/gems/[email protected]/gems/bundler-1.14.6/lib/bundler/runtime.rb:86:in `block in require' 
    01 /usr/local/rvm/gems/[email protected]/gems/bundler-1.14.6/lib/bundler/runtime.rb:75:in `each' 
    01 /usr/local/rvm/gems/[email protected]/gems/bundler-1.14.6/lib/bundler/runtime.rb:75:in `require' 
    01 /usr/local/rvm/gems/[email protected]/gems/bundler-1.14.6/lib/bundler.rb:107:in `require' 
    01 /var/www/<app_name>/releases/20170406223132/config/application.rb:7:in `<top (required)>' 
    01 /var/www/<app_name>/releases/20170406223132/Rakefile:4:in `require' 
    01 /var/www/<app_name>/releases/20170406223132/Rakefile:4:in `<top (required)>' 
    01 /var/www/<app_name>/shared/bundle/ruby/2.3.0/gems/rake-11.3.0/exe/rake:27:in `<top (required)>' 
    01 (See full trace by running task with --trace) 

심지어이 문제를 해결하기 시작 위치를 알 수 없습니다. RVM에 문제가 있습니까? 번들러에 문제가 있습니까? 내 앱?

나는 this RVM issue에있는 제안을 시도했지만 아무 소용이 없습니다. 제발 제발?

또한 Capistrano를 사용하여이를 관리 할 수있는 방법이 있다면 Capistrano의 목적은 원격 시스템 관리이므로 바람직 할 것입니다. 하지만 에 서버에 로그인 할 때이 있으면 내가해야 할 일을 알 수 없습니다.

업데이트 - 지금까지 RVM gemset을 완전히 파괴하고 모든 보석을 완전히 "다시 설치"하도록 시도했지만 여전히 아래와 같은 오류가 발생합니다.

+1

대상 컴퓨터의 PostgreSQL 버전에 문제가 있다고 말하고 싶습니다. 그게 뭐야? – katafrakt

+0

@katafrakt - 우승자 우승자 - 그게 전부였습니다. 9.6 클라이언트가있는 9.5 서버가 있습니다. 지금은 받고 있어요 : 지금 – CDub

+0

보너스 포인트 'LoadError : 호환되지 않는 라이브러리 버전/공유/번들/루비/2.3.0/보석/노코 기리-1.7.1/lib 디렉토리/노코 기리/nokogiri.so' 카피 스트라 노에서 . 좀 더 아래로, 나는 얻는다 : LoadError : 그런 파일을로드 할 수 없다 - nokogiri/2.3/nokogiri – CDub

답변

1

이러한 종류의 오류는 일반적으로 대상 컴퓨터에 설치된 PostgreSQL 버전에 문제가 있음을 의미합니다. 너무 오래되었거나 호환되지 않습니다.