Uploaded image for project: 'Confluence Cloud'
  1. Confluence Cloud
  2. CONFCLOUD-74093

Purging all in a space when there is a file or files with over 1000 versions causes a 500 error

    XMLWordPrintable

Details

    Description

      Issue Summary

      When purging all from the space trash, if the space trash included files that have 1000+ versions, this will cause a 500 error.

      This is reproducible on Data Center: Unknown

      Steps to Reproduce

      1. Step 1. You can either create a page and populate the 1000+ file versions using a script like this:
        async function uploadfile(file, site, pageid){
            let url = `${site}/wiki/rest/api/content/${pageid}/child/attachment`
            let fdata = new FormData()
            fdata.append('file', file.data, file.name)
        
            let resp = await fetch(url, {
                method: 'PUT',
                headers: {
                    'X-Atlassian-Token': 'nocheck'
                },
                body: fdata
            })
        
            return resp
        }
        
        
        async function main(){
            let site = 'https://jaredlongtest02.atlassian.net'
            let pageid = 1780187137
            let stackingdata = 'here is some test data...'
            let file = {
                data: new Blob(['here is some test data']),
                name: 'test2.txt'
            }
        
            responses = []
        
            for (let i = 0; i <= 1100; i++){
                stackingdata = `${stackingdata} here is some test data... ${i}`
                file.data = new Blob([`${stackingdata}`])
                let resp = await uploadfile(file, site, pageid)
                let x = await resp.json()
                responses.push(x)
            }
            return responses
        
        
        }
        let x = await main()
        

      or you can import a space that already has files with 1000+ versions:

      1. Step 2: delete the files with 1000+ versions from their page.
      2. Step 3: Go to the space trash and attempt to purge all.

      Expected Results

      The page is updated with progress of the deletion

      Actual Results

      Nothing happens, then after some time, you get the following error replacing the whole page:

      <!DOCTYPE html>
      <html lang="en">
          <head>
              <meta charset="utf-8">
              <meta name="description" content="">
              <meta name="viewport" content="width=device-width, initial-scale=1">
              <title>Atlassian Cloud Notifications - Page Unavailable</title>
              <link rel="stylesheet" href="/_edge/resources/aui-prototyping.css">
          </head>
          <body>
              <div id="page">
                  <section id="content" role="main" class="aui-page-notification aui-page-size-medium">
                      <div id="notifications" class="aui-page-panel">
                          <div class="aui-page-header-inner">
                              <section class="aui-page-panel-content">
                                  <h1>Page unavailable</h1>
                                  <div class="aui-page-notification-description">
                                      Please check <a href="https://status.atlassian.com">Atlassian Status</a> for any known issues.
                                      <br />
                                      If your page hasn't appeared again in 5-10 minutes, please contact our support team.
                                  </div>
                                  <br>
                                  <p>
                                      <a href="https://status.atlassian.com" class="aui-button aui-button-primary">
                                          Atlassian Status
                                      </a>
                                      &nbsp;
                                      <a href="https://support.atlassian.com" class="aui-button">
                                          Contact support
                                      </a>
                                  </p>
                              </section>
                          </div>
                      </div>
                  </section>
                  <footer id="footer">
                      <section class="footer-body">
                          <ul>
                              <li><a href="https://status.atlassian.com">Atlassian Status</a></li>
                              <li><a href="https://confluence.atlassian.com/display/cloud/What's+New">Release Summary</a></li>
                              <li><a href="https://confluence.atlassian.com/display/Cloud/Atlassian+Cloud+Documentation">Documentation</a></li>
                              <li><a href="https://answers.atlassian.com">Answers</a></li>
                          </ul>
                          <div id="footer-logo"><a href="https://www.atlassian.com/" target="_blank">Atlassian</a></div>
                      </section>
                  </footer>
              </div>
          </body>
      </html>
      

      Workaround

      Currently there is no known workaround for this behavior. However, you can simply wait, and the files should continue to be deleted in the background over time.

      Attachments

        Activity

          People

            Unassigned Unassigned
            jlong@atlassian.com Jared Long
            Votes:
            2 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: