Details

    • Fix Priority:
      5

      Description

      Steps to reproduce:

      1. Start Portal 6.2 CE GA6
      2. Upgrade portal to 7.0

      Expected Result: There are no SQL duplicate keys during the upgrade process.

      Actual Result: There are usually 2 duplicate keys and 1 syntax error. These errors don't seem to affect portal functionality however. (Full log and duplicate key query attached below.)

      Duplicate Key 1
       
           [java] java.sql.SQLSyntaxErrorException: Duplicate key name 'IX_902FD874' 
           [java] at org.mariadb.jdbc.internal.SQLExceptionMapper.get(SQLExceptionMapper.java:138) 
           [java] at org.mariadb.jdbc.internal.SQLExceptionMapper.throwException(SQLExceptionMapper.java:106) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeQueryEpilog(MySQLStatement.java:268) 
           [java] at org.mariadb.jdbc.MySQLStatement.execute(MySQLStatement.java:296) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeUpdate(MySQLStatement.java:364) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeUpdate(MySQLStatement.java:396) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQL(BaseDB.java:291) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQL(BaseDB.java:261) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQLTemplateString(BaseDB.java:431) 
           [java] at com.liferay.portal.kernel.dao.db.BaseDBProcess.runSQLTemplateString(BaseDBProcess.java:110) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.alter(UpgradeProcess.java:338) 
           [java] at com.liferay.portal.upgrade.v7_0_0.UpgradeDocumentLibrary.doUpgrade(UpgradeDocumentLibrary.java:110) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:88) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:115) 
           [java] at com.liferay.portal.upgrade.UpgradeProcess_7_0_0$4.doRun(UpgradeProcess_7_0_0.java:117) 
           [java] at com.liferay.portal.kernel.concurrent.ThrowableAwareRunnable.run(ThrowableAwareRunnable.java:37) 
           [java] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
           [java] at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
           [java] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
           [java] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
           [java] at java.lang.Thread.run(Thread.java:745) 
           [java] Caused by: org.mariadb.jdbc.internal.common.QueryException: Duplicate key name 'IX_902FD874' 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.getResult(MySQLProtocol.java:995) 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.executeQuery(MySQLProtocol.java:1050) 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.executeQuery(MySQLProtocol.java:1030) 
           [java] at org.mariadb.jdbc.MySQLStatement.execute(MySQLStatement.java:289) 
           [java] ... 17 more 
      
      Duplicate Key 2
       
           [java] java.sql.SQLSyntaxErrorException: Duplicate key name 'IX_C28C72EC' 
           [java] at org.mariadb.jdbc.internal.SQLExceptionMapper.get(SQLExceptionMapper.java:138) 
           [java] at org.mariadb.jdbc.internal.SQLExceptionMapper.throwException(SQLExceptionMapper.java:106) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeQueryEpilog(MySQLStatement.java:268) 
           [java] at org.mariadb.jdbc.MySQLStatement.execute(MySQLStatement.java:296) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeUpdate(MySQLStatement.java:364) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeUpdate(MySQLStatement.java:396) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQL(BaseDB.java:291) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQL(BaseDB.java:261) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQLTemplateString(BaseDB.java:431) 
           [java] at com.liferay.portal.kernel.dao.db.BaseDBProcess.runSQLTemplateString(BaseDBProcess.java:110) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.alter(UpgradeProcess.java:338) 
           [java] at com.liferay.portal.upgrade.v7_0_0.UpgradeMembershipRequest.doUpgrade(UpgradeMembershipRequest.java:27)
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:88) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:115) 
           [java] at com.liferay.portal.upgrade.UpgradeProcess_7_0_0$4.doRun(UpgradeProcess_7_0_0.java:125) 
           [java] at com.liferay.portal.kernel.concurrent.ThrowableAwareRunnable.run(ThrowableAwareRunnable.java:37) 
           [java] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
           [java] at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
           [java] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
           [java] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
           [java] at java.lang.Thread.run(Thread.java:745) 
           [java] Caused by: org.mariadb.jdbc.internal.common.QueryException: Duplicate key name 'IX_C28C72EC' 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.getResult(MySQLProtocol.java:995) 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.executeQuery(MySQLProtocol.java:1050) 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.executeQuery(MySQLProtocol.java:1030) 
           [java] at org.mariadb.jdbc.MySQLStatement.execute(MySQLStatement.java:289) 
           [java] ... 17 more 
      
      Syntax Error
       
           [java] java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'PRIMARY on ListType' at line 1_Query is:_drop index PRIMARY on ListType [Sanitized] 
           [java] at org.mariadb.jdbc.internal.SQLExceptionMapper.get(SQLExceptionMapper.java:138) 
           [java] at org.mariadb.jdbc.internal.SQLExceptionMapper.throwException(SQLExceptionMapper.java:106) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeQueryEpilog(MySQLStatement.java:268) 
           [java] at org.mariadb.jdbc.MySQLStatement.execute(MySQLStatement.java:296) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeUpdate(MySQLStatement.java:364) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeUpdate(MySQLStatement.java:396) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQL(BaseDB.java:291) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQL(BaseDB.java:261) 
           [java] at com.liferay.portal.kernel.dao.db.BaseDBProcess.runSQL(BaseDBProcess.java:60) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.alter(UpgradeProcess.java:310) 
           [java] at com.liferay.portal.upgrade.v7_0_0.UpgradeListType.doUpgrade(UpgradeListType.java:27) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:88) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:115) 
           [java] at com.liferay.portal.upgrade.UpgradeProcess_7_0_0$4.doRun(UpgradeProcess_7_0_0.java:124) 
           [java] at com.liferay.portal.kernel.concurrent.ThrowableAwareRunnable.run(ThrowableAwareRunnable.java:37) 
           [java] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
           [java] at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
           [java] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
           [java] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
           [java] at java.lang.Thread.run(Thread.java:745) 
           [java] Caused by: org.mariadb.jdbc.internal.common.QueryException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'PRIMARY on ListType' at line 1_Query is:_drop index PRIMARY on ListType [Sanitized] 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.getResult(MySQLProtocol.java:995) 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.executeQuery(MySQLProtocol.java:1050) 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.executeQuery(MySQLProtocol.java:1030) 
           [java] at org.mariadb.jdbc.MySQLStatement.execute(MySQLStatement.java:289) 
           [java] ... 16 more 
      

      Upgraded from:
      Tomcat 7.0.62 + MariaDB 10.0.23
      Portal 6.2 CE GA6

      Upgraded to:
      Tomcat 8.0.32 + MariaDB 10.0.23
      Portal Master Git Hash: df9d5f120af3752e62efa36d1afc5a0c0f64b974 Steps to reproduce:

      1. Start Portal 6.2 CE GA6
      2. Upgrade portal to 7.0

      Expected Result: There are no SQL duplicate keys during the upgrade process.

      Actual Result: There is a syntax error. The error doesn't seem to affect portal functionality however. (Full log attached below.)

       
           [java] java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'PRIMARY on ListType' at line 1_Query is:_drop index PRIMARY on ListType [Sanitized] 
           [java] at org.mariadb.jdbc.internal.SQLExceptionMapper.get(SQLExceptionMapper.java:138) 
           [java] at org.mariadb.jdbc.internal.SQLExceptionMapper.throwException(SQLExceptionMapper.java:106) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeQueryEpilog(MySQLStatement.java:268) 
           [java] at org.mariadb.jdbc.MySQLStatement.execute(MySQLStatement.java:296) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeUpdate(MySQLStatement.java:364) 
           [java] at org.mariadb.jdbc.MySQLStatement.executeUpdate(MySQLStatement.java:396) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQL(BaseDB.java:291) 
           [java] at com.liferay.portal.dao.db.BaseDB.runSQL(BaseDB.java:261) 
           [java] at com.liferay.portal.kernel.dao.db.BaseDBProcess.runSQL(BaseDBProcess.java:60) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.alter(UpgradeProcess.java:310) 
           [java] at com.liferay.portal.upgrade.v7_0_0.UpgradeListType.doUpgrade(UpgradeListType.java:27) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:88) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:115) 
           [java] at com.liferay.portal.upgrade.UpgradeProcess_7_0_0.doUpgrade(UpgradeProcess_7_0_0.java:83) 
           [java] at com.liferay.portal.kernel.upgrade.UpgradeProcess.upgrade(UpgradeProcess.java:88) 
           [java] at com.liferay.portal.kernel.upgrade.util.UpgradeProcessUtil._upgradeProcess(UpgradeProcessUtil.java:175)
           [java] at com.liferay.portal.kernel.upgrade.util.UpgradeProcessUtil.upgradeProcess(UpgradeProcessUtil.java:143) 
           [java] at com.liferay.portal.kernel.upgrade.util.UpgradeProcessUtil.upgradeProcess(UpgradeProcessUtil.java:125) 
           [java] at com.liferay.portal.events.StartupHelper.upgradeProcess(StartupHelper.java:164) 
           [java] at com.liferay.portal.events.StartupHelperUtil.upgradeProcess(StartupHelperUtil.java:81) 
           [java] at com.liferay.portal.tools.DBUpgrader.upgrade(DBUpgrader.java:158) 
           [java] at com.liferay.portal.tools.DBUpgrader.main(DBUpgrader.java:96) 
           [java] Caused by: org.mariadb.jdbc.internal.common.QueryException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'PRIMARY on ListType' at line 1_Query is:_drop index PRIMARY on ListType [Sanitized] 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.getResult(MySQLProtocol.java:995) 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.executeQuery(MySQLProtocol.java:1050) 
           [java] at org.mariadb.jdbc.internal.mysql.MySQLProtocol.executeQuery(MySQLProtocol.java:1030) 
           [java] at org.mariadb.jdbc.MySQLStatement.execute(MySQLStatement.java:289) 
           [java] ... 18 more 
      

      Upgraded from:
      Tomcat 7.0.62 + MariaDB 10.0.23
      Portal 6.2 CE GA6

      Upgraded to:
      Tomcat 8.0.32 + MariaDB 10.0.23
      Portal Master Git Hash

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Days since last comment:
                4 years, 10 weeks, 6 days ago

                Packages

                Version Package
                7.0.0 CE RC1