Database Isolation health check fails in Jira server
プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Fisheye および Crucible は除く
問題
This health check verifies the isolation level for SQL Server databases is as expected. If it is not using the expected isolation level a critical error will be reported as it can cause JIRA to not operate as expected. This includes encountering critical problems with the application such that it will fail to work in a stable manner. For example, it can deadlock as per Jira server functionality fails when using MS-SQL and READ_COMMITTED_SNAPSHOT is not set, experience performance problems and various operations can fail in JIRA.
診断
The database isolation level of READ_COMMITTED_SNAPSHOT is ON which is supported by JIRA.
The isolation is supported! All is well.
The database isolation level of READ_COMMITTED_SNAPSHOT is OFF which is not supported by JIRA.
The JIRA instance is using an unsupported isolation level and must be fixed.
ソリューション
This can be resolved by setting the isolation level as expected, as per the below steps:
- Stop JIRA, as if it is still running it will block any change of the isolation level.
Execute the below query, replacing
JIRA-DATABASE
with the database name to update the isolation level.ALTER DATABASE [JIRA-DATABASE] SET READ_COMMITTED_SNAPSHOT ON;
データベースの変更を行う場合は必ず事前にバックアップを取得してください。可能な場合は、まずステージング サーバーで SQL コマンドの変更、挿入、更新、または削除を行うようにします。
Verify the below SQL returns 1, which is the expected isolation level.
SELECT is_read_committed_snapshot_on FROM sys.databases WHERE name = '<JIRA-DATABASE>';
- Start JIRA, the isolation health check will now pass.