Uploaded image for project: 'Confluence Server and Data Center'
  1. Confluence Server and Data Center
  2. CONFSERVER-59391

AO plugin 3.1.7 in confluence 7.2 does not support mysql 8.0

    XMLWordPrintable

    Details

      Description

      Issue Summary

      AO-3510 plugin not able to start due to AO upgrade task. Upgrade confluence 7.2 to 3.1.9
      or 3.2.2 to add support for new reserved words in mysql 8.0.

      Steps to Reproduce

      1. Start confluence 7.2 or later ( which supports mysql 8.0)
      2. Configure confluence to start with mysql 8.0 external database
      3. Install hide-elements-macro 2.3.1 from marketplace
      4. Observe the plugin is unable to start due to AO exception

      Expected Results

      Plugins that use reserved words from mysql 8.0 as column names should work as usual.

      Actual Results

      Plugin cannot be installed.

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

      java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUPS LONGTEXT,
          ID INTEGER AUTO_INCREMENT NOT NULL,
          OBJECT_KEY VARCHAR(' at line 2
      	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
      	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
      	at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
      	at com.mysql.cj.jdbc.StatementImpl.executeUpdateInternal(StatementImpl.java:1335)
      	at com.mysql.cj.jdbc.StatementImpl.executeLargeUpdate(StatementImpl.java:2108)
      	at com.mysql.cj.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1245)
      	at com.mchange.v2.c3p0.impl.NewProxyStatement.executeUpdate(NewProxyStatement.java:410)
      	at net.java.ao.DatabaseProvider.executeUpdate(DatabaseProvider.java:2259)
      	at net.java.ao.DatabaseProvider.executeUpdateForAction(DatabaseProvider.java:2315)
      	at net.java.ao.DatabaseProvider.executeUpdatesForActions(DatabaseProvider.java:2287)
      	at net.java.ao.schema.SchemaGenerator.migrate(SchemaGenerator.java:91)
      	at net.java.ao.EntityManager.migrate(EntityManager.java:129)
      	at com.atlassian.activeobjects.internal.EntityManagedActiveObjects.migrate(EntityManagedActiveObjects.java:51)
      	at com.atlassian.activeobjects.internal.ActiveObjectUpgradeManagerImpl.lambda$upgrade$0(ActiveObjectUpgradeManagerImpl.java:64)
      	at com.atlassian.sal.core.transaction.HostContextTransactionTemplate$1.doInTransaction(HostContextTransactionTemplate.java:21)
      	at com.atlassian.sal.spring.component.SpringHostContextAccessor.lambda$doInTransaction$0(SpringHostContextAccessor.java:70)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140)
      

      Workaround

      No work around available

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              bmccarthy@atlassian.com Billy McCarthy
              Reporter:
              bmccarthy@atlassian.com Billy McCarthy
              Votes:
              1 Vote for this issue
              Watchers:
              7 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: