Details
-
Bug
-
Resolution: Fixed
-
Low
-
6.0
-
Severity 3 - Minor
-
Description
Summary
The Thread limit health check is incorrectly failing environments where the number of user processes configured is =4096. This is incorrect and not consistent with the recommendations to set this to >= 4096.
There may be scenarios where admins will configure this to 4096 and the test will fail.
Steps to Reproduce
- Set up a Confluence instance with user processes set to 4096
- Run the Confluence health check
Expected Results
- The check passes
Actual Results
The below warning is thrown in the healthcheck:
The maximum number of processes for the user account running Confluence is currently 4096, which can cause performance issues. We recommend increasing this to at least 4,096.
Notes
The SupportHealthStatus check() call is incorrectly doing a conditional check for
if (threadLimit.get().greaterThan(MIN_THREAD_LIMIT))
when it should be doing it as >=.
public SupportHealthStatus check() { final Optional<FileSystemInfo.ThreadLimit> threadLimit = fileSystemInfo.getThreadLimit(); if (threadLimit.isPresent()) { if (threadLimit.get().greaterThan(MIN_THREAD_LIMIT)) { return healthStatusFactory.healthy(i18nResolver.getText("healthcheck.threadlimit.valid", application.name(), MIN_THREAD_LIMIT)); } else { return healthStatusFactory.failed(i18nResolver.getText("healthcheck.threadlimit.fail", application.name(), threadLimit.get().toString(), MIN_THREAD_LIMIT), WARNING); } } return healthStatusFactory.healthy(i18nResolver.getText("healthcheck.threadlimit.undefined", application.name(), MIN_THREAD_LIMIT)); }
Workaround
Increase the number of open files to be greater than 4096 as per Health Check: Thread Limit
Attachments
Issue Links
- is cloned from
-
JRASERVER-64317 Thread Limit health check incorrectly fails if the maximum running user processes is equal to 4096
- Closed