2014-08-29 2 views
0

4.3.2에서 Sonar 4.4로 업그레이드하려고하면 다음과 같이 db 마이그레이션이 실패합니다.Sonar 4.4 업그레이드가 실패합니다.

이 사람이 전에 본 사람이 있습니까? jira 문제를 간략하게 살펴 보았지만 관련된 내용을 찾지 못했습니다. MS SQLServer에 2,008

사용

... 2014년 8월 29일 11시 58분 12초 INFO [DbMigration]
2014년 8월 29일 11시 58분 12초 INFO [DbMigration] == InverseRuleKeyIndex : 마이그레이션 === ========================= 2014.08.29 11:58:12 INFO [DbMigration] - 중복 된 규칙 삭제 2014.08.29 11:58:12 정보 [DbMigration] - 중복 제거 된 규칙 정보 [DbMigration] - 제거 _ 인덱스 (: 규칙, {: 이름 => "rules_plugin_key_and_name"}) DbMigration] -> 0.0620s 2014.08.29 11:58:12 정보 [DbMigration] - add_index (: rules, [: plugin_rule_key], {: unique => true, : name => "rules_re po_key "}) 2014년 8월 29일 11시 58분 12초 ERROR [ossui.JRubyFacade] 데이터베이스 가 오류가 발생했습니다 업그레이드 실패,이 모든 나중에 마이그레이션이 취소 :

ActiveRecord::JDBCError: The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name 'sonar.rules' and the index name 'rules_repo_key'. The duplicate key value is (grvy, org.codenarc.rule.basic.HardCodedWindowsRootDirectoryRule).: CREATE UNIQUE INDEX [rules_repo_key] ON [rules] ([plugin_name], [plugin_rule_key]) 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/connection_adapters/abstract_adapter.rb:227:in `log' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/connection_adapters/abstract_adapter.rb:212:in `log' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-jdbc-adapter-1.1.3/lib/arjdbc/jdbc/adapter.rb:183:in `execute' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/connection_adapters/abstract/schema_statements.rb:292:in `add_index' 
    org/jruby/RubyKernel.java:2235:in `send' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:352:in `method_missing' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:328:in `say_with_time' 
    jar:file:/E:/Server/sonarqube-4.4/web/WEB-INF/lib/jruby-complete-1.7.9.jar!/META-INF/jruby.home/lib/ruby/1.8/benchmark.rb:293:in `measure' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:328:in `say_with_time' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:348:in `method_missing' 
    E:/Server/sonarqube-4.4/web/WEB-INF/config/environment.rb:124:in `add_index' 
    E:/Server/sonarqube-4.4/web/WEB-INF/config/../lib/../db/migrate/546_inverse_rule_key_index.rb:66:in `up' 
    org/jruby/RubyKernel.java:2223:in `send' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:282:in `migrate' 
    jar:file:/E:/Server/sonarqube-4.4/web/WEB-INF/lib/jruby-complete-1.7.9.jar!/META-INF/jruby.home/lib/ruby/1.8/benchmark.rb:293:in `measure' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:282:in `migrate' 
    org/jruby/RubyKernel.java:2227:in `send' 
    E:1:in `migrate' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:491:in `migrate' 
    org/jruby/RubyProc.java:290:in `call' 
    org/jruby/RubyProc.java:224:in `call' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:565:in `ddl_transaction' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/connection_adapters/abstract/database_statements.rb:136:in `transaction' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/transactions.rb:182:in `transaction' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:565:in `ddl_transaction' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:490:in `migrate' 
    org/jruby/RubyArray.java:1613:in `each' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:477:in `migrate' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:401:in `up' 
    E:/Server/sonarqube-4.4/web/WEB-INF/gems/gems/activerecord-2.3.15/lib/active_record/migration.rb:383:in `migrate' 
    E:/Server/sonarqube-4.4/web/WEB-INF/config/../lib/database_version.rb:62:in `upgrade_and_start' 
    E:/Server/sonarqube-4.4/web/WEB-INF/app/models/database_migration_manager.rb:109:in `start_migration' 
    org/jruby/RubyProc.java:290:in `call' 
    org/jruby/RubyProc.java:228:in `call' 

...

답변

0

Sonar-3.4에서 Sonarqube-4.4로 업그레이드 할 때이 문제가있었습니다. 테스트 환경에서 업그레이드 지침에 따라 데이터베이스를 업그레이드했지만 테스트 서버에는 DB가없고 데이터가 없습니다. 그런 다음 DB를 복원하고 음향 기기를 재시작했습니다 (나쁜 접근이었습니다). 그래서 SonarQube를 제거하고 Sonar3.4.1 및 DB를 복원하고 최신 Sonar DB를 복원 한 다음 Sonarqube를 다시 설치 한 다음 SonarQube 업그레이드 설명서에 언급 된대로 "http://x.x.x.x.:9000/sonar/setup"을 사용하여 프론트 엔드에서 Sonar DB를 업그레이드합니다. 지금까지 아무런 문제없이 저에게 잘 작동합니다.

관련 문제