Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-66151

Upgrading non-default shard causes incomplete portal

    Details

      Description

      Steps to reproduce:

      1. Start Portal 6.2 CE GA6
      2. Create 3 shards (3 databases)
        Sharding Properties
        spring.configs=\
                META-INF/base-spring.xml,\
                \
                META-INF/hibernate-spring.xml,\
                META-INF/infrastructure-spring.xml,\
                META-INF/management-spring.xml,\
                \
                META-INF/util-spring.xml,\
                \
                META-INF/jpa-spring.xml,\
                \
                META-INF/executor-spring.xml,\
                \
                META-INF/audit-spring.xml,\
                META-INF/cluster-spring.xml,\
                META-INF/editor-spring.xml,\
                META-INF/jcr-spring.xml,\
                META-INF/ldap-spring.xml,\
                META-INF/messaging-core-spring.xml,\
                META-INF/messaging-misc-spring.xml,\
                META-INF/mobile-device-spring.xml,\
                META-INF/notifications-spring.xml,\
                META-INF/poller-spring.xml,\
                META-INF/rules-spring.xml,\
                META-INF/scheduler-spring.xml,\
                META-INF/search-spring.xml,\
                META-INF/workflow-spring.xml,\
                \
                META-INF/counter-spring.xml,\
                META-INF/mail-spring.xml,\
                META-INF/portal-spring.xml,\
                META-INF/portlet-container-spring.xml,\
                META-INF/staging-spring.xml,\
                META-INF/virtual-layouts-spring.xml,\
                \
                META-INF/monitoring-spring.xml,\
                \
                #META-INF/dynamic-data-source-spring.xml,\
                META-INF/shard-data-source-spring.xml,\
                #META-INF/memcached-spring.xml,\
                \
        
        #
        # Set the database that is to be used for the default company and globally
        # used tables in a sharded environment.
        #
        shard.default.name=default
        
        #
        # Specify an algorithm for selecting a new shard on portal instance
        # creation. Use ManualShardSelector for shard selection via the web
        # interface.
        #
        #shard.selector=com.liferay.portal.dao.shard.RoundRobinShardSelector
        shard.selector=com.liferay.portal.dao.shard.ManualShardSelector
        
        shard.available.names=default,one,two
        
      3. Upgrade all shards one at a time starting with the default shard
        portal-upgrade-ext.properties
        dl.file.entry.thumbnail.max.height=128
        discussion.max.comments=0
        jdbc.one.driverClassName=com.mysql.jdbc.Driver
        layout.set.prototype.propagate.logo=true
        jdbc.two.driverClassName=com.mysql.jdbc.Driver
        blogs.trackback.enabled=true
        upgrade.processes.6210=${upgrade.processes.master}
        users.image.check.token=false
        jdbc.one.password=liferay
        jdbc.default.driverClassName=com.mysql.jdbc.Driver
        jdbc.default.url=jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
        editor.wysiwyg.portal-web.docroot.html.taglib.ui.discussion.jsp=simple
        jdbc.two.password=liferay
        dl.file.entry.thumbnail.max.width=128
        jdbc.default.password=liferay
        jdbc.one.username=root
        shard.default.name=default
        liferay.home=L:/test-public/master-bundles
        jdbc.two.username=root
        jdbc.one.url=jdbc:mysql://localhost/test1?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
        jdbc.two.url=jdbc:mysql://localhost/test2?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
        discussion.comments.format=bbcode
        web.server.servlet.check.image.gallery=true
        jdbc.default.username=root
        
        portal-upgrade-database.properties
        #NOTE: Change the database below to upgrade the next database
        jdbc.default.url=jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
        jdbc.default.driverClassName=com.mysql.jdbc.Driver
        jdbc.default.username=root
        jdbc.default.password=liferay
        
      4. Start either one of the non-default databases

      Result: There are missing portlets and data.

      Reproduced on:
      Tomcat 8.0.32 + MySQL 5.6.26
      Portal 6.2 CE GA6
      Portal Master Git Hash: d310bb60bd0f562008caa4300b5f13b36e1de627

        Attachments

        1. MissingPortlets.png
          MissingPortlets.png
          220 kB
        2. PostUpgradeDumps.zip
          374 kB
        3. PreUpgradeDumps.zip
          236 kB

          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, 5 days ago

                Packages

                Version Package
                7.0.1 CE GA2