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

Make the Macro remigration job configurable

    XMLWordPrintable

Details

    • 5
    • 0
    • We collect Confluence feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

    Description

      NOTE: This suggestion is for Confluence Server. Using Confluence Cloud? See the corresponding suggestion.

      After upgrading from Confluence 3.5 to a later version, if there are pages containing unmigrated-wiki-markup macros in the page, the macro remigration job will be triggered on the following restart whenever a plugin is enabled or upgraded.

      The following message will show up in the log file:

      2014-03-02 23:26:30,043 INFO [main] [confluence.upgrade.impl.DefaultUpgradeGate] waitForBooleanValue Waiting to find if plugin dependent upgrades are required. Maximum wait time will be 90 seconds.
      2014-03-02 23:26:30,044 INFO [main] [confluence.upgrade.impl.DefaultUpgradeGate] waitForBooleanValue plugin dependent upgrades are required : false.
      2014-03-02 23:26:30,048 INFO [main] [xhtml.migration.macro.RemigrationLifecycleItem] startup Remigration is required
      

      This is not very scalable when the customer has a huge instance with many unmigrated pages, as this operation create a new version on each page (even if the page contents has not changed). This creates load on the journal service (i.e. incremental indexer) as each new version of a page adds about 2-4 entries to be processed in the index queue. There should be some kind of variable or setting that we can set to disable the job from running during the Confluence startup.

      Workaround 1

      Before every Confluence startup, run the following query each time before startup to determine if the macro remigration job will be triggered:

      SELECT * FROM BANDANA WHERE bandanakey = 'migration.required';
      

      If the "bandanavalue" column shows "true", then update this to "false" to prevent the subsequent startup from kicking off there migration job.

      UPDATE BANDANA SET bandanavalue = '<boolean>false</boolean>' WHERE bandanakey = 'migration.required';
      

      This value need to checked on every restart as the aforementioned plugin operations may set this value back to "true".

      Workaround 2

      For Confluence 5.10.8 and newer, the workaround from CONFSERVER-37710 can be applied:

      1. open CONF_INSTALL_FOLDER/bin/setenv.sh (or setenv.bat under windows)
      2. locate "CATALINA_OPTS" and add the below line to the file:
        CATALINA_OPTS="-Dconfluence.startup.remigration.disable=true ${CATALINA_OPTS}"
      3. save the file and restart tomcat

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              yilinmo Yilin (Inactive)
              Votes:
              14 Vote for this issue
              Watchers:
              23 Start watching this issue

              Dates

                Created:
                Updated: