SonarQube - QProfile หายไป

ฉันได้อัปเกรด SonarQube จาก 4.4 เป็น 5.1 แล้ว และฉันได้รับข้อผิดพลาดต่อไปนี้

2015.04.09 11:56:50 ERROR web[o.a.c.c.C.[.[.[/]] Exception sending context initialized event to listener instance of class org.sonar.server.platform.PlatformServletContextListener
java.lang.IllegalStateException: Could not execute normalization for stack
    at org.sonar.server.search.IndexQueue.processActionsIntoQueries(IndexQueue.java:136) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.search.IndexQueue.enqueue(IndexQueue.java:82) ~[sonar-server-5.1.jar:na]
    at org.sonar.core.persistence.DbSession.commit(DbSession.java:62) ~[sonar-core-5.1.jar:na]
    at org.sonar.server.db.BaseDao.synchronizeAfter(BaseDao.java:370) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.db.BaseDao.synchronizeAfter(BaseDao.java:356) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.search.IndexSynchronizer.synchronize(IndexSynchronizer.java:104) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.search.IndexSynchronizer.executeDeprecated(IndexSynchronizer.java:74) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.platform.ServerComponents$1.doPrivileged(ServerComponents.java:850) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.user.DoPrivileged.execute(DoPrivileged.java:43) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.platform.ServerComponents.executeStartupTasks(ServerComponents.java:847) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.platform.Platform.executeStartupTasks(Platform.java:126) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.platform.Platform.startLevel34Containers(Platform.java:122) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.platform.Platform.doStart(Platform.java:81) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.platform.PlatformServletContextListener.contextInitialized(PlatformServletContextListener.java:44) ~[sonar-server-5.1.jar:na]
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4720) [tomcat-embed-core-8.0.18.jar:8.0.18]
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5154) [tomcat-embed-core-8.0.18.jar:8.0.18]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [tomcat-embed-core-8.0.18.jar:8.0.18]
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409) [tomcat-embed-core-8.0.18.jar:8.0.18]
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1399) [tomcat-embed-core-8.0.18.jar:8.0.18]
    at java.util.concurrent.FutureTask.run(Unknown Source) [na:1.8.0_20]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [na:1.8.0_20]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.8.0_20]
    at java.lang.Thread.run(Unknown Source) [na:1.8.0_20]
Caused by: java.util.concurrent.ExecutionException: java.lang.NullPointerException: QProfile is missing
    at java.util.concurrent.FutureTask.report(Unknown Source) [na:1.8.0_20]
    at java.util.concurrent.FutureTask.get(Unknown Source) [na:1.8.0_20]
    at org.sonar.server.search.IndexQueue.processActionsIntoQueries(IndexQueue.java:118) ~[sonar-server-5.1.jar:na]
    ... 22 common frames omitted
Caused by: java.lang.NullPointerException: QProfile is missing
    at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:204) ~[guava-10.0.1.jar:na]
    at org.sonar.core.qualityprofile.db.ActiveRuleKey.of(ActiveRuleKey.java:45) ~[sonar-core-5.1.jar:na]
    at org.sonar.core.qualityprofile.db.ActiveRuleDto.getKey(ActiveRuleDto.java:65) ~[sonar-core-5.1.jar:na]
    at org.sonar.server.qualityprofile.index.ActiveRuleNormalizer.normalize(ActiveRuleNormalizer.java:79) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.qualityprofile.index.ActiveRuleNormalizer.normalize(ActiveRuleNormalizer.java:45) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.search.action.InsertDto.doCall(InsertDto.java:47) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.search.action.IndexAction.call(IndexAction.java:61) ~[sonar-server-5.1.jar:na]
    at org.sonar.server.search.action.IndexAction.call(IndexAction.java:28) ~[sonar-server-5.1.jar:na]
    ... 4 common frames omitted

ปลั๊กอินทั้งหมดได้รับการอัปเกรดเป็นเวอร์ชันล่าสุดแล้ว และปลั๊กอินเก่าที่ไม่รองรับได้ถูกลบออกแล้ว

กระดาษห่อหยุดและ SonarQube ไม่ทำงาน


person Shaun    schedule 09.04.2015    source แหล่งที่มา
comment
ดูเหมือนว่าปัญหาเกี่ยวกับการซิงโครไนซ์ดัชนี ElasticSearch ภายใน มันควรจะกลับมาอยู่ในสภาพที่ดีหากคุณลบโฟลเดอร์ ${SQ_HOME}/data/es และรีสตาร์ทเซิร์ฟเวอร์   -  person Mithfindel    schedule 09.04.2015


คำตอบ (1)


ฉันมีปัญหาเดียวกันและแก้ไขมัน

"QProfile หายไป" หมายความว่ากฎที่ใช้งานอยู่บางกฎอ้างถึงโปรไฟล์คุณภาพที่ขาดหายไป

ดังนั้นฉันจึงดูฐานข้อมูล sonarqube ของฉันและดำเนินการ SQL ด้านล่าง

SELECT DISTINCT a.profile_id
FROM sonar.active_rules a
LEFT JOIN sonar.rules_profiles b ON a.profile_id = b.id
WHERE b.id IS NULL
;

ฉันพบprofile_idบางส่วนแล้วจึงลบบันทึกเหล่านี้ จากนั้นฉันก็เริ่ม sonarQube ตอนนี้ sonarQube ดูทำงานได้ดี

ฉันจะดีใจถ้าฉันสามารถช่วยคุณได้

person sgykfjsm    schedule 19.02.2016