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

Updating ATST Troubleshooting and Support Tools breaks MySQL health checks

    XMLWordPrintable

Details

    Description

      Issue Summary

      Updating Atlassian Troubleshooting and Support Tools to the latest version 1.23.1 breaks the MySQL character set and collation health check which fails incorrectly.

      Steps to Reproduce

      1. Confluence is connected to MySQL and you have verified your encoding and collation is correct utf8/utf8_bin
      2. Update ATST to the latest version 1.23.1
      3. Go to: General Configuration > Troubleshooting and support tools
      4. Notice the following errors:

        Encoding: What does this check do?
        Checks if the collation used by the tables, columns, and database defaults in your MySQL database is correct.
        Result
        Exception during health check invocation java.lang.RuntimeException: java.sql.SQLException: You can't operate on a closed ResultSet!!!

        Collation: What does this check do?
        Checks if the character set used by the tables, columns, and database defaults in your MySQL database is correct.

        Result
        Exception during health check invocation java.lang.RuntimeException: java.sql.SQLException: You can't operate on a closed ResultSet!!!

      Expected Results

      The test should pass as the error is only thrown after updating ATST without any changes made to the DB.

      Actual Results

      The collation and encoding MySQL health checks fail

      The below exception is thrown in the xxxxxxx.log file:

      2020-01-22 12:09:46,201 WARN [HealthCheckWatchdog:thread-7] [troubleshooting.healthcheck.concurrent.SupportHealthCheckTask] healthCheckError Unable to complete execution of health check Collation due to an exception │
      │ -- referer: http://localhost:26154/c6154/plugins/servlet/troubleshooting/view/ | url: /c6154/rest/troubleshooting/1.0/check/process/ | traceId: b67f511ec9773af8 | userName: admin                                     │
      │java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.sql.SQLException: You can't operate on a closed ResultSet!!!
      

      Workaround

      Option 1 - Disable the MySQL modules
      1. Go to: > Manage Apps > Expand Atlassian Troubleshooting and Support Tools > Expand modules > Disable the following modules:
        1. confluence.healthcheck.mysql.character.set.name
        2. confluence.healthcheck.mysql.collation.name
      Option 2 - Downgrade ATST to the previous version 1.22.0
      1. Download ATST 1.22.0 from here
      2. Shutdown Confluence
      3. Go to <CONF-INSTALL>/conlfuence/WEB-INF/atlassian-bundled-plugins
      4. Backup and delete the file plugin-confluence-1.22.0.jar and replace with the downloaded 1.22.0 version
      5. Clear the plug-in cache
      6. Start Confluence
      • For some reason, this was not enough to downgrade the plugin, if it still fails, follow on:
      •  Please remember to take a database backup before making any changes.
      1. Shutdown Confluence
      2. Follow Manually remove plugin from DB
        1. Run the following query:
          select PLUGINDATAID, PLUGINKEY, FILENAME, LASTMODDATE from PLUGINDATA;
          
        2. You should see the ASTS 1.23.1 listed, similar to below:
          PLUGINDATAID PLUGINKEY                                       FILENAME                                                LASTMODDATE         
          ------------ ----------------------------------------------- ------------------------------------------------------- ------------------- 
          1081345      com.atlassian.troubleshooting.plugin-confluence plugin.1358229087590107522.plugin-confluence-1.23.1.jar 2020-01-22 12:41:34
        3. Run the following query using the PLUGINDATAID from above for the ATST plugin - in this example it's 1081345:
          delete from PLUGINDATA where PLUGINDATAID=XXXXXX;
      3. Clear the plug-in cache.
      4. Start Confluence
      5. You should now find the ATST version has been downgraded to 1.22.0. You can confirm from the UPM and also the health check will now pass.

      Attachments

        Issue Links

          Activity

            People

              nwarapasakul Nattha Warapasakul (Inactive)
              dmark@atlassian.com Danny (Inactive)
              Votes:
              15 Vote for this issue
              Watchers:
              28 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: