RSS フィードなどの検索ビューから返される課題の数を制限する - アトラシアン製品ドキュメント
Jira では、Word、Excel、RSS または XML を含む複数のフォーマットの検索結果を表示できます。
多数の課題を返す検索ビューは、Jira での処理の完了に長い時間と膨大なメモリを使用します。これは Jira における OutOfMemoryErrors の要因となる場合があります。
特に問題があるのは、 RSS フィードで検査結果を表示する場合です。理由は以下に示します。
- ユーザーの RSS フィードが定期的 (1時間ごとなど) にリクエストを飛ばし続けている
- RSS リーダーが、ユーザーに直接向けていないリクエストを作成しているため、ユーザーはリクエストに時間がかかる、または失敗していることに気づいていない
検索ビューで表示される課題の数を制限するために、jira-config.properties
で次の 3 つのプロパティを使用できます。
jira-config.properties
ファイルを変更し、その内容を適用する場合、手順の詳細について「jira-config.properties
に変更を加える」をご参照ください。
jira.search.views.default.max
jira.search.views.default.max
プロパティは、返される課題の数のソフト制限を設定します。この既定値は 1000 です。たとえばこの値を 100 に設定する場合、jira-config.properties
ファイルで以下のように指定します。
jira.search.views.default.max = 100
RSS または XML ビューでは、Jira は検索ビューの URL に tempMax
パラメータを追加することで制限を適用します。次のような例があります。
上記の例では、Jira が返す課題の数を 200 に制限しています。
ただし、ユーザーは tempMax
パラメーターを URL から削除したり、tempMax
の値を増やしたりすることで、このソフト制限を上書きできます。
jira.search.views.max.limit
jira.search.views.max.limit
プロパティは、返却される課題の数にハード制限を設定します。この既定値は 1000 です。たとえばこの値を 200 に設定する場合、jira-config.properties
ファイルで以下のように指定します。
jira.search.views.max.limit = 200
この例では、ユーザーが 200 件以上の課題を返す課題ビューをリクエストすると、Jira は課題を返す代わりに 403 (Forbidden) エラーを返します。ユーザーにとっては不便かもしれませんが、Jira での大量のリソース消費やメモリ不足を防ぐことができます。
その際、設定した jira.search.views.max.limit
の値が jira.search.views.default.max
で設定したソフト制限以上であることを確認します。ソフト制限未満の場合、既定のソフト制限で制限された課題を返すすべての検索ビューが 403 (Forbidden) エラーを返します。
jira.search.views.max.unlimited.group
ほとんどのユーザーには制限を設定するが、一部のユーザーでは除外する要件がある場合があります。このような例の 1 つとして、Jira インスタンスがインターネットに公開されている場合が考えられます。外部 (インターネット) のユーザーには制限をかけ、内部のユーザーは無制限に検索ビューを操作できるようにしたいとします。これは jira.search.views.max.unlimited.group
プロパティを使用して実現できます。
jira.search.views.max.unlimited.group
プロパティは、既定では無効になっており、jira-config.properties
ファイルに存在しないか、存在するが "#" でコメントアウトされていて無効になっています。このプロパティを jira-config.properties
ファイルで有効にするには、その値に有効なグループを指定するか、空白のまま残します。例:
jira.search.views.max.unlimited.group = jira-administrators
この方法によって制限を回避したユーザーがjira.search.views.default.max
のソフト制限を上書きするには、引き続き、上記の説明のように tempMax
パラメーターを URL に追加して RSS または XMLを表示する必要があります。