Performance problems when sorting by custom field
プラットフォームについて: Data Center - この記事は、Data Center プラットフォームのアトラシアン製品に適用されます。
このナレッジベース記事は製品の Data Center バージョン用に作成されています。Data Center 固有ではない機能の Data Center ナレッジベースは、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。
*Fisheye および Crucible は除く
症状
The result of searches take long time to complete when sorting by custom field and JIRA instance may run into frequent GCs.
Thread dumps contain com.atlassian.jira.issue.search.parameters.lucene.sort.DocumentSortComparatorSource$InternalFieldComparator which has a refence to a huge com.atlassian.jira.issue.Issue array.:
"http-bio-8090-exec-24" daemon prio=5 tid=7fdb10959800 nid=0x11a0f7000 runnable [11a0ed000]
java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
...
at com.atlassian.jira.issue.fields.CustomFieldImpl$CustomFieldIssueSortComparator.compare(CustomFieldImpl.java:1974)
at com.atlassian.jira.issue.search.parameters.lucene.sort.DefaultIssueSortComparator.compare(DefaultIssueSortComparator.java:37)
at com.atlassian.jira.issue.search.parameters.lucene.sort.DocumentSortComparatorSource$InternalFieldComparator.compareBottom(DocumentSortComparatorSource.java:89)
at org.apache.lucene.search.TopFieldCollector$MultiComparatorNonScoringCollector.collect(TopFieldCollector.java:404)
at org.apache.lucene.search.IndexSearcher.searchWithFilter(IndexSearcher.java:575)
原因
This issue is caused by a know bug: JRASERVER-33365 - Issue Search has performance problems when sorting by custom field Labels
回避策
- Remove the sorting by custom field from the search filters;
Watch the bug report for further updates.