Issue Summary
Due to the following bugs, a cache flush event can cause cascading performance issue on Data Center.
As such, we would like to make the cache flush event debug as the default logger in Jira, so that administrator can track the event and correlate with other performance metrics (ie, response time)
The debug logger consist of one line per event as below.
awk -F ']' '{if ($0 ~/was flushed/) {print $2}}' atlassian-jira.log | sort | uniq -c | sort -n -k 1,1 | less
1 Cache UpmPluginLicenseCache was flushed
1 Cache UpmRoleBasedMetadataCache was flushed
1 Cache com.atlassian.upm.license.role.jira.GlobalPermissionUserCountCache was flushed
4 Cache com.atlassian.jira.project.version.CachingVersionStore.cache.versionsByName was flushed
4 Cache com.atlassian.jira.project.version.CachingVersionStore.cache.versionsByProjectId was flushed
970 Cache com.atlassian.jira.issue.security.IssueSecuritySchemeManagerImpl.projectSchemeCache was flushed
970 Cache com.atlassian.jira.issue.security.IssueSecuritySchemeManagerImpl.schemeIdToSecuritiesCache was flushed
970 Cache com.atlassian.jira.issue.security.IssueSecuritySchemeManagerImplsecurityLevelToPermissionsCache was flushed
1085 Cache com.atlassian.jira.issue.security.IssueSecurityLevelManagerImpl.projectAndUserToSecurityLevelCache was flushed
Steps to Reproduce
- Setup 3 nodes data center
- Create 5000 custom field (to exagerate the prorblem)
- Change a customfield configuration
- Notice slow drop on performance across nodes due to cache flush event
Expected Results
The debug log should be enabled by default since it is necessary and is not verbose
Actual Results
The debug is not enabled hence we don't know if there is cache flush event happened
Workaround
Enable DEBUG logging manually (see JRASERVER-66031 for context)
- navigate to Administration > Logging and Profiling
- Click Configure debug for new package
- Add DEBUG on com.atlassian.cache.event