Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-56189

Slow page loading with too many attachment versions

    XMLWordPrintable

Details

    Description

      Summary

      Confluence page will take a long time to load when you have too many attachments version. A simple page with no macros can take up to 55 seconds to load

      Steps to Reproduce

      1. Create a page
      2. Add 10 attachments
      3. Upload several versions of those attachments (10,000 versions)
      4. View the page

      Expected Results

      The page loading time should not be affected by the number of attachment versions

      Actual Results

      The page takes a long time to load and the thread dumps show that Confluence is not handling loading the attachments efficiently.

      HAR File

      The HAR file shows the TTFB (Time To First Byte) is 46 seconds.

      Page Profiling Results

      2018-07-06 04:25:00,071 DEBUG [http-nio-80-exec-34] [atlassian.util.profiling.UtilTimerStack] log [43251ms] - /pages/viewpage.action
        [0ms] - UserAccessor.getExistingUserByKey()
        [0ms] - UserAccessor.getUserByName()
          [0ms] - CrowdService.getUser()
            [0ms] - ApplicationDAO.findByName()
            [0ms] - UserDao.findByName()
            [0ms] - UserDao.findByName()
            [0ms] - UserDao.findByName()
        [36657ms] - XW Interceptor: Before defaultStack: /pages/viewpage.action (ViewPageAction.execute())
          [0ms] - UserAccessor.exists()
            [0ms] - CrowdService.getUser()
              [0ms] - ApplicationDAO.findByName()
              [0ms] - UserDao.findByName()
              [0ms] - UserDao.findByName()
              [0ms] - UserDao.findByName()
          [0ms] - UserAccessor.getPropertySet()
          [0ms] - UserAccessor.isDeactivated()
          [0ms] - CrowdService.isUserMemberOfGroup()
            [0ms] - ApplicationDAO.findByName()
            [0ms] - MembershipDao.isUserDirectMember()
            [0ms] - MembershipDao.search()
            [0ms] - MembershipDao.isUserDirectMember()
            [0ms] - MembershipDao.search()
            [0ms] - MembershipDao.isUserDirectMember()
          [0ms] - SpaceAwareInterceptor.intercept()
          [35203ms] - PageAwareInterceptor.intercept()
            [0ms] - ContentEntityManager.getById()
            [0ms] - PermissionManager.hasPermission()
            [0ms] - PermissionManager.hasPermission()
            [0ms] - CommentAwareInterceptor.intercept()
            [0ms] - UserAwareInterceptor.intercept()
            [0ms] - BootstrapAwareInterceptor.intercept()
            [0ms] - PermissionManager.hasPermission()
            [35188ms] - XW Interceptor: After defaultStack: /pages/viewpage.action (ViewPageAction.execute())
              [35188ms] - XW Interceptor: After validatingStack: /pages/viewpage.action (ViewPageAction.execute())
                [0ms] - UserAccessor.getPropertySet()
                [47ms] - DefaultRenderer.render
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - Rendering soy template: confluence.extra.information:soy-templates:Confluence.InformationMacro.before.soy
                  [0ms] - Rendering soy template: confluence.extra.information:soy-templates:Confluence.InformationMacro.after.soy
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.dynamicBefore.soy
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.after.soy
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.dynamicBefore.soy
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.after.soy
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.dynamicBefore.soy
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.after.soy
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.dynamicBefore.soy
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.after.soy
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - UserAccessor.getPropertySet()
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.dynamicBefore.soy
                  [0ms] - Rendering soy template: com.atlassian.confluence.plugins.expand-macro:expand-macro-soy-templates:Confluence.ExpandMacro.after.soy
                  [0ms] - UserAccessor.getPropertySet()
                [35141ms] - XW View: doExecute(/pages/viewpage.vm)
                  [0ms] - XW View: getTemplate(/pages/viewpage.vm)
                  [35126ms] - ApplyDecoratorDirective.render()
                    [0ms] - SpaceManager.getSpace()
                    [0ms] - UserAccessor.getUserProfilePicture()
                    [0ms] - UserAccessor.getPropertySet()
                    [35110ms] - Rendering velocity template: /decorators/root.vmd
                      [35110ms] - ApplyDecoratorDirective.render()
                        [0ms] - SpaceManager.getSpace()
                        [0ms] - UserAccessor.getUserProfilePicture()
                        [0ms] - UserAccessor.getPropertySet()
                        [35110ms] - Rendering velocity template: /decorators/page.vmd
                          [0ms] - SpacePermissionManager.hasPermission()
                          [0ms] - SpacePermissionManager.hasPermission()
                          [0ms] - SpacePermissionManager.hasPermission()
                          [0ms] - SpacePermissionManager.hasPermission()
                          [0ms] - PermissionManager.hasPermission()
                          [0ms] - Rendering velocity template: /includes/skiplinked-section.vm
                          [0ms] - UserAccessor.getPropertySet()
                          [0ms] - UserAccessor.getPropertySet()
                          [1657ms] - Parse: /decorators/includes/content-navigation.vm
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - UserAccessor.getPropertySet()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - UserAccessor.getPropertySet()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.isConfluenceAdministrator()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasCreatePermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                          [0ms] - UserAccessor.getPropertySet()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - PermissionManager.hasPermission()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - PermissionManager.hasPermission()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - PermissionManager.hasPermission()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - PermissionManager.hasPermission()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - PermissionManager.hasPermission()
                          [0ms] - ContentEntityManager.getById()
                          [0ms] - SpaceManager.getLogoForSpace()
                          [0ms] - SpaceManager.getLogoForSpace()
                          [0ms] - SpaceManager.getSpace()
                          [0ms] - UserAccessor.getPropertySet()
                          [0ms] - UserAccessor.getPropertySet()
                          [1484ms] - UserAccessor.getGroupNames()
                            [1484ms] - CrowdService.search()
                              [0ms] - ApplicationDAO.findByName()
                              [437ms] - MembershipDao.search()
                              [507ms] - MembershipDao.search()
                              [540ms] - MembershipDao.search()
                              [0ms] - MembershipDao.search()
                              [0ms] - MembershipDao.search()
                              [0ms] - MembershipDao.search()
                              [0ms] - MembershipDao.search()
                              [0ms] - MembershipDao.search()
                              [0ms] - MembershipDao.search()
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - ContentPermissionFilter.bits
                          [0ms] - UserAccessor.getPropertySet()
                          [0ms] - CalendarPermissionManager.hasEditSubCalendarPrivilege()
                            [0ms] - SpacePermissionManager.hasPermission()
                          [0ms] - FormatSettingsManager.getDateFormat()
                          [0ms] - FormatSettingsManager.getDateTimeFormat()
                          [0ms] - FormatSettingsManager.getTimeFormat()
                          [0ms] - FormatSettingsManager.getDateFormat()
                          [0ms] - FormatSettingsManager.getDateTimeFormat()
                          [0ms] - FormatSettingsManager.getEditorBlogPostDate()
                          [0ms] - SpaceManager.getSpace()
                          [0ms] - PermissionManager.hasCreatePermission()
                          [0ms] - PermissionManager.hasCreatePermission()
                          [0ms] - FormatSettingsManager.getDateFormat()
                          [0ms] - FormatSettingsManager.getDateTimeFormat()
                          [0ms] - FormatSettingsManager.getTimeFormat()
                          [0ms] - FormatSettingsManager.getDateFormat()
                          [0ms] - FormatSettingsManager.getDateTimeFormat()
                          [0ms] - FormatSettingsManager.getEditorBlogPostDate()
                          [0ms] - SpacePermissionManager.hasPermission()
                          [0ms] - SpacePermissionManager.hasPermission()
                          [0ms] - PermissionManager.hasPermission()
                          [0ms] - PermissionManager.hasPermission()
                          [0ms] - DefaultRenderer.render
                            [0ms] - UserAccessor.getPropertySet()
                            [0ms] - UserAccessor.getPropertySet()
                            [0ms] - UserAccessor.getPropertySet()
                            [0ms] - UserAccessor.getPropertySet()
                            [0ms] - SpaceManager.getSpace()
                            [0ms] - Rendering velocity template: vm/tree.vm
                            [0ms] - UserAccessor.getPropertySet()
                          [0ms] - WikiStyleRenderer.convertWikiToXHtml()
                          [0ms] - WikiStyleRenderer.convertWikiToXHtml()
                          [0ms] - Parse: /decorators/includes/page-content-includes.vm
                            [0ms] - Parse: /template/includes/actionerrors.vm
                            [0ms] - Parse: /decorators/includes/link-to-this-page.vm
                            [0ms] - Parse: /template/includes/page-move-templates.vm
                              [0ms] - PermissionManager.hasRemoveHierarchyPermission()
                            [0ms] - Parse: /template/includes/search-results-grid-templates.vm
                          [0ms] - Parse: /decorators/includes/page-metadata.vm
                            [0ms] - CrowdService.getUser()
                              [0ms] - ApplicationDAO.findByName()
                              [0ms] - UserDao.findByName()
                              [0ms] - UserDao.findByName()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - PermissionManager.hasPermission()
                            [0ms] - UserAccessor.getConfluenceUserPreferences()
                            [0ms] - FormatSettingsManager.getDateFormat()
                            [0ms] - FormatSettingsManager.getDateTimeFormat()
                            [0ms] - FormatSettingsManager.getTimeFormat()
                            [0ms] - FormatSettingsManager.getDateFormat()
                            [0ms] - FormatSettingsManager.getDateTimeFormat()
                            [0ms] - FormatSettingsManager.getEditorBlogPostDate()
                            [0ms] - Rendering velocity template: /includes/skiplinked-section.vm
                          [0ms] - UserAccessor.getPropertySet()
                          [0ms] - Parse: /com/atlassian/confluence/plugins/labels/components/labels-editor.vm
                            [0ms] - Parse: /com/atlassian/confluence/plugins/labels/components/labels-content.vm
                              [0ms] - Parse: /com/atlassian/confluence/plugins/labels/components/labels-list.vm
                          [468ms] - ApplyDecoratorDirective.render()
                            [0ms] - SpaceManager.getSpace()
                            [0ms] - UserAccessor.getUserProfilePicture()
                            [0ms] - UserAccessor.getPropertySet()
                            [468ms] - Rendering velocity template: /decorators/root.vmd
                              [468ms] - ApplyDecoratorDirective.render()
                                [0ms] - SpaceManager.getSpace()
                                [0ms] - UserAccessor.getUserProfilePicture()
                                [0ms] - UserAccessor.getPropertySet()
                                [468ms] - Rendering velocity template: /decorators/components/comments.vmd
                                  [453ms] - NotificationManager.isWatchingContent()
                                  [0ms] - PermissionManager.hasCreatePermission()
                                  [0ms] - Rendering velocity template: templates/quick-comment.vm
                                    [0ms] - PermissionManager.hasCreatePermission()
                                    [0ms] - UserAccessor.getPropertySet()
                                    [0ms] - UserAccessor.getUserProfilePicture()
                                    [0ms] - Rendering soy template: com.atlassian.confluence.plugins.quickedit:quick-comment-initial:Confluence.Templates.Comments.displayTopLevelCommentEditorPlaceholder.soy
                                  [0ms] - PermissionManager.hasCreatePermission()
                          [532ms] - Parse: /pages/page-breadcrumbs.vm
                            [0ms] - Parse: /breadcrumbs.vm
                          [6203ms] - Parse: /template/includes/space-tools-web-items.vm
                            [6203ms] - system.space.tools
                              [0ms] - PermissionManager.hasPermission()
                              [0ms] - PermissionManager.hasPermission()
                              [0ms] - PermissionManager.hasPermission()
                              [0ms] - PermissionManager.hasPermission()
                              [0ms] - PermissionManager.isConfluenceAdministrator()
                              [0ms] - PermissionManager.hasPermission()
                              [0ms] - PermissionManager.isConfluenceAdministrator()
                              [1656ms] - UserAccessor.getGroupNames()
                                [1656ms] - CrowdService.search()
                                  [0ms] - ApplicationDAO.findByName()
                                  [500ms] - MembershipDao.search()
                                  [687ms] - MembershipDao.search()
                                  [469ms] - MembershipDao.search()
                                  [0ms] - MembershipDao.search()
                                  [0ms] - MembershipDao.search()
                                  [0ms] - MembershipDao.search()
                                  [0ms] - MembershipDao.search()
                                  [0ms] - MembershipDao.search()
                                  [0ms] - MembershipDao.search()
                              [0ms] - PermissionManager.hasPermission()
                              [0ms] - PermissionManager.hasPermission()
                              [500ms] - NotificationManager.getNotificationByUserAndSpace()
                              [469ms] - NotificationManager.getNotificationByUserAndSpaceAndType()
                              [453ms] - NotificationManager.getNotificationByUserAndSpaceAndType()
                              [578ms] - NotificationManager.getNotificationByUserAndSpace()
                              [906ms] - NotificationManager.getNotificationByUserAndSpace()
                              [563ms] - NotificationManager.getNotificationByUserAndSpaceAndType()
                              [578ms] - NotificationManager.getNotificationByUserAndSpace()
                              [500ms] - NotificationManager.getNotificationByUserAndSpaceAndType()
                              [0ms] - PermissionManager.isConfluenceAdministrator()
                              [0ms] - PermissionManager.hasPermission()
                          [0ms] - PermissionManager.hasPermission()
            [0ms] - UserAccessor.getUserProfilePicture()
            [0ms] - UserAccessor.getPropertySet()
        [15ms] - SpaceManager.getSpace()
        [6500ms] - SiteMesh: applyDecorator: main (/decorators/main.vmd)
          [0ms] - UserAccessor.getPropertySet()
          [0ms] - UserAccessor.getUserProfilePicture()
          [5156ms] - Rendering velocity template: /decorators/main.vmd
            [0ms] - UserAccessor.getPropertySet()
            [0ms] - UserAccessor.getPropertySet()
            [2000ms] - Parse: /decorators/includes/header.vm
              [0ms] - UserAccessor.getUserProfilePicture()
              [0ms] - UserAccessor.getUserPreferences()
              [0ms] - UserAccessor.getPropertySet()
              [0ms] - JiraAccessor.getLinkedJiraApplications()
              [0ms] - PermissionManager.isConfluenceAdministrator()
              [0ms] - CalendarManager.getUserPreference()
                [0ms] - CalendarPreferenceManager.getUserPreference()
              [0ms] - SpacePermissionManager.hasPermission()
              [0ms] - UserAccessor.getUserByName()
                [0ms] - CrowdService.getUser()
                  [0ms] - ApplicationDAO.findByName()
                  [0ms] - UserDao.findByName()
                  [0ms] - UserDao.findByName()
                  [0ms] - UserDao.findByName()
              [0ms] - PermissionManager.hasPermission()
              [0ms] - UserAccessor.getConfluenceUserPreferences()
              [0ms] - Rendering soy template: com.atlassian.confluence.extra.team-calendars:server-soy-templates:Confluence.TeamCalendars.Server.Templates.messages.soy
              [0ms] - PermissionManager.isConfluenceAdministrator()
              [0ms] - Rendering velocity template: templates/date-header.vm
                [0ms] - FormatSettingsManager.getDateFormat()
              [1969ms] - VelocityFriendlyPageBuilderService.getConfluenceResourceTags
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - SpacePermissionManager.hasPermission()
                  [0ms] - DefaultSpacePermissionManager.hasPermissionNoExemptions(USECONFLUENCE, anonymous, global)
                    [0ms] - UserAccessor.isDeactivated()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getExistingUserByKey()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getUserByName()
                  [0ms] - CrowdService.getUser()
                    [0ms] - ApplicationDAO.findByName()
                    [0ms] - UserDao.findByName()
                    [0ms] - UserDao.findByName()
                    [0ms] - UserDao.findByName()
                [0ms] - PermissionManager.isSystemAdministrator()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - UserAccessor.getExistingUserByKey()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - UserAccessor.getExistingUserByKey()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
              [0ms] - UserAccessor.getPropertySet()
              [0ms] - UserAccessor.getUserByName()
                [0ms] - CrowdService.getUser()
                  [0ms] - ApplicationDAO.findByName()
                  [0ms] - UserDao.findByName()
                  [0ms] - UserDao.findByName()
                  [0ms] - UserDao.findByName()
              [0ms] - PermissionManager.hasPermission()
            [0ms] - Parse: /decorators/includes/main-content-includes.vm
              [0ms] - Parse: /template/includes/global-settings.vm
            [0ms] - MessageManager.getMessages()
            [0ms] - UserAccessor.getPropertySet()
            [3140ms] - Parse: /decorators/includes/common-header.vm
              [1437ms] - Parse: /decorators/includes/aui-header-primary.vm
                [0ms] - PermissionManager.hasPermission()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - CalendarPermissionManager.hasEditSubCalendarPrivilege()
                  [0ms] - SpacePermissionManager.hasPermission()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - PermissionManager.isConfluenceAdministrator()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - SpacePermissionManager.hasPermission()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - SpaceManager.getSpaces()
                [0ms] - SpaceManager.getSpaces()
                [0ms] - Rendering soy template: com.atlassian.auiplugin:aui-experimental-soy-templates:aui.buttons.button.soy
                [0ms] - Rendering soy template: com.atlassian.auiplugin:aui-experimental-soy-templates:aui.buttons.button.soy
              [1141ms] - Parse: /decorators/includes/aui-header-secondary.vm
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - PermissionManager.isConfluenceAdministrator()
                [0ms] - PermissionManager.isConfluenceAdministrator()
                [0ms] - PermissionManager.isConfluenceAdministrator()
                [0ms] - PermissionManager.isConfluenceAdministrator()
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - PermissionManager.isConfluenceAdministrator()
                [0ms] - PermissionManager.hasPermission()
                [547ms] - SpaceManager.getPersonalSpace()
                [531ms] - SpaceManager.getPersonalSpace()
                [47ms] - PersonalInformationManager.getOrCreatePersonalInformation()
                [0ms] - PermissionManager.hasCreatePermission()
                [0ms] - PermissionManager.hasPermission()
              [0ms] - Rendering soy template: com.atlassian.plugins.atlassian-nav-links-plugin:rotp-menu:navlinks.templates.appswitcher.switcher.soy
                [0ms] - UserAccessor.getPropertySet()
                [0ms] - UserAccessor.getExistingUserByKey()
                [0ms] - PermissionManager.hasPermission()
                [0ms] - UserAccessor.getExistingUserByKey()
                [0ms] - PermissionManager.hasPermission()
              [0ms] - Rendering soy template: com.atlassian.auiplugin:aui-experimental-soy-templates:aui.page.header.soy
            [0ms] - Rendering velocity template: /decorators/includes/footer.vm
              [0ms] - Parse: /decorators/includes/footer-content.vm
        [0ms] - PermissionManager.isSystemAdministrator()
      

      Thread Dumps

      You will notice the following stacktrace in the thread dumps.
      P.S. These thread dumps were taken when SQL Logging was enabled.

      "http-nio-80-exec-6" #194 daemon prio=5 os_prio=0 tid=0x000000003469e800 nid=0x290 runnable [0x000000005ba03000]
         java.lang.Thread.State: RUNNABLE
      	at java.lang.Throwable.getStackTraceElement(Native Method)
      	at java.lang.Throwable.getOurStackTrace(Unknown Source)
      	- locked <0x000000075ceb8b48> (a java.lang.Throwable)
      	at java.lang.Throwable.getStackTrace(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor222.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      	at java.lang.reflect.Method.invoke(Unknown Source)
      	at org.apache.log4j.spi.LocationInfo.<init>(LocationInfo.java:139)
      	at org.apache.log4j.spi.LoggingEvent.getLocationInformation(LoggingEvent.java:253)
      	at org.apache.log4j.helpers.PatternParser$LocationPatternConverter.convert(PatternParser.java:500)
      	at org.apache.log4j.helpers.PatternConverter.format(PatternConverter.java:65)
      	at org.apache.log4j.PatternLayout.format(PatternLayout.java:506)
      	at com.atlassian.confluence.util.PatternLayoutWithStackTrace.format(PatternLayoutWithStackTrace.java:26)
      	at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:310)
      	at org.apache.log4j.RollingFileAppender.subAppend(RollingFileAppender.java:276)
      	at org.apache.log4j.WriterAppender.append(WriterAppender.java:162)
      	at com.atlassian.confluence.logging.ConfluenceHomeLogAppender.append(ConfluenceHomeLogAppender.java:147)
      	at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
      	- locked <0x00000006414f0d40> (a com.atlassian.confluence.logging.ConfluenceHomeLogAppender)
      	at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
      	at org.apache.log4j.Category.callAppenders(Category.java:206)
      	- locked <0x000000064140d4c8> (a org.apache.log4j.spi.RootLogger)
      	at org.apache.log4j.Category.forcedLog(Category.java:391)
      	at org.apache.log4j.Category.log(Category.java:856)
      	at org.slf4j.impl.Log4jLoggerAdapter.log(Log4jLoggerAdapter.java:595)
      	at org.apache.commons.logging.impl.SLF4JLocationAwareLog.trace(SLF4JLocationAwareLog.java:107)
      	at net.sf.hibernate.type.NullableType.nullSafeGet(NullableType.java:78)
      	at net.sf.hibernate.type.NullableType.nullSafeGet(NullableType.java:63)
      	at net.sf.hibernate.type.AbstractType.hydrate(AbstractType.java:67)
      	at net.sf.hibernate.loader.Loader.hydrate(Loader.java:690)
      	at net.sf.hibernate.loader.Loader.loadFromResultSet(Loader.java:631)
      	at net.sf.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:590)
      	at net.sf.hibernate.loader.Loader.getRow(Loader.java:505)
      	at net.sf.hibernate.loader.Loader.getRowFromResultSet(Loader.java:218)
      	at net.sf.hibernate.loader.Loader.doQuery(Loader.java:285)
      	at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:138)
      	at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:941)
      	at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:961)
      	at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:59)
      	at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:51)
      	at net.sf.hibernate.persister.EntityPersister.load(EntityPersister.java:413)
      	at net.sf.hibernate.impl.SessionImpl.doLoad(SessionImpl.java:2157)
      	at net.sf.hibernate.impl.SessionImpl.doLoadByClass(SessionImpl.java:2017)
      	at net.sf.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:1979)
      	at net.sf.hibernate.type.ManyToOneType.resolveIdentifier(ManyToOneType.java:69)
      	at net.sf.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:108)
      	at net.sf.hibernate.collection.Bag.initializeFromCache(Bag.java:157)
      	at net.sf.hibernate.impl.SessionImpl.initializeCollectionFromCache(SessionImpl.java:4044)
      	at net.sf.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:3340)
      	at net.sf.hibernate.collection.PersistentCollection.initialize(PersistentCollection.java:195)
      	at net.sf.hibernate.collection.PersistentCollection.read(PersistentCollection.java:71)
      	at net.sf.hibernate.collection.Bag.iterator(Bag.java:256)
      	at com.google.common.collect.Collections2$FilteredCollection.iterator(Collections2.java:175)
      	at com.google.common.collect.Collections2$FilteredCollection.toArray(Collections2.java:228)
      	at java.util.ArrayList.<init>(Unknown Source)
      	at com.atlassian.confluence.core.ContentEntityObject.getLatestVersionsOfAttachments(ContentEntityObject.java:874)
      

      Attachment Versions

      In order to confirm whether you are affected by this, you can run the following query on the database

      select count(1) from content where (contenttype = 'ATTACHMENT' or contenttype is NULL) and pageid = <PAGEID>;
      

      Make sure to replace the <PAGEID> with the actual page id.

      Workaround

      The only available workaround at the moment is to copy the offending page and archive the old one. This will reduce the number of attachment versions for that page.

      Attachments

        Issue Links

          Activity

            People

              huyle Huy Le (Inactive)
              rslaiby Rudy Slaiby
              Votes:
              2 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: