Sonarqube データベースについて助けが必要です。
毎月、Sonarqube データベースからいくつかのインジケーターを RCI とカバレッジとして抽出しています。バージョン 2.0.0.0 の Sonar 7.1 と Branch Plugin Community Edition を使用しています。
ブランチ マスターによってソナー データベースで選択を実行すると、Sonarqube Web アプリケーションに表示された正確な RCI 番号とカバレッジ番号が取得されます。しかし、別のブランチを取得するようにクエリを変更すると、Sonarqube Web アプリケーションに表示される数は 1 つになり、クエリで取得する数は別の数になります。
たとえば、「contagarantida.garantias-temporarias」というコンポーネントがあります。RCI の結果は、ブランチ マスターの em Sonarqube Web アプリケーションが 93.7 であることが示されました。このクエリを使用して、Sonar データベースで番号を取得しましたが、すべてうまくいきました。
https://cdn1.imggmi.com/uploads/2019/9/13/ef907e9f7290d61ebcf5313f5879ee05-full.jpg
ただし、クエリでブランチの名前をたとえば 1.0.0.21 に変更すると、Sonarqube Web アプリケーションで示された数は 92,6 であり、Sonarqube データベースでの数は 93,70 です。
https://cdn1.imggmi.com/uploads/2019/9/13/4275372dfad4ec889867c158213a0d66-full.jpg
select p.kee,
p.name,
m.value,
b.kee,
(TO_DATE('19700101','yyyymmdd') + ((s.CREATED_AT/1000)/24/60/60)) CREATED_AT,
(TO_DATE('19700101','yyyymmdd') + ((s.BUILD_DATE/1000)/24/60/60)) BUILD_DATE
from sonar_owner_71.snapshots s
left join sonar_owner_71.project_measures m on s.uuid = m.analysis_uuid
left join sonar_owner_71.projects p on m.component_uuid = p.root_uuid
inner join sonar_owner_71.Project_Branches b on b.project_uuid = p.project_uuid
where m.metric_id = 161
and p.scope = 'PRJ'
and s.islast = 1
and (TO_DATE('20190101','yyyymmdd')) < (TO_DATE('19700101','yyyymmdd') + ((s.BUILD_DATE/1000)/24/60/60))
and (p.kee='contagarantida.garantias-temporarias' and b.kee='master');
この違いの理由がわかりません。クエリが間違っていますか? 手伝って頂けますか?