Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-64178

update JIRA 7.3 connecting to MySQL database documenation around 'default_storage_engine'

      Summary

      JIRA 7.3.x startup logs have this warning:

      2017-02-15 20:09:18,384 JIRA-Bootstrap WARN      [c.a.j.appconsistency.db.MySqlConnectionUrlCheck] You have an error in your dbconfig.xml file. Missing "default_storage_engine" in connection url. The "storage_engine" parameter is deprecated and should be replaced with  "default_storage_engine".Please refer to the https://docs.atlassian.com/jira/jadm-docs-073/Connecting+JIRA+applications+to+MySQL.
      2017-02-15 20:09:20,136 JIRA-Bootstrap INFO      [c.a.jira.startup.DatabaseChecklistLauncher] JIRA database startup checks completed successfully.
      

      The dbconfig.xml has the entry of:

          <url>jdbc:mysql://127.0.0.1:3306/jiradb?useUnicode=true&amp;characterEncoding=UTF8&amp;sessionVariables=storage_engine=InnoDB</url> 
      

      The problem is that the warning log is pointing users to Connecting JIRA applications to MySQL - Atlassian Documentation But that documentation does not explicitly tell users how/where to use the new "default_storage_engine" variable. it is still using the previous 'storage_engine' in all examples and explanations there. I suspect that this replaces the previous/deprecated 'storage_engine', but this document should be updated to reflect the correct settings for JIRA 7.3.x, and update the sample dbconfig.xml on that document.

      Environment

      • JIRA 7.3.x and above
      • MySQL database

      Steps to Reproduce

      1. Set up JIRA 7.3.x to run with MySQL database as per Connecting JIRA applications to MySQL - Atlassian Documentation.
      2. Check the log file during JIRA startup.

      Expected Results

      JIRA is started with no warning or error for the database connection.

      Actual Results

      The below exception is thrown in the atlassian-jira.log file:

      2017-02-15 20:09:18,384 JIRA-Bootstrap WARN      [c.a.j.appconsistency.db.MySqlConnectionUrlCheck] You have an error in your dbconfig.xml file. Missing "default_storage_engine" in connection url. The "storage_engine" parameter is deprecated and should be replaced with  "default_storage_engine".Please refer to the https://docs.atlassian.com/jira/jadm-docs-073/Connecting+JIRA+applications+to+MySQL.
      2017-02-15 20:09:20,136 JIRA-Bootstrap INFO      [c.a.jira.startup.DatabaseChecklistLauncher] JIRA database startup checks completed successfully.
      

      Workaround

      Edit the database URL to:

          <url>jdbc:mysql://127.0.0.1:3306/jiradb?useUnicode=true&amp;characterEncoding=UTF8&amp;sessionVariables=default_storage_engine=InnoDB</url> 
      

      Replace storage_engine to default_storage_engine.

            [JRASERVER-64178] update JIRA 7.3 connecting to MySQL database documenation around 'default_storage_engine'

            i just replaced the "storage_engine" with  "default_storage_engine" , it worked for me

            Papi Reddy Idamakanti added a comment - i just replaced the "storage_engine" with  "default_storage_engine" , it worked for me

            We have a similar issue, while JSD was working fine since last few minutes it keeps throwing this error. Not sure - why it has occurred - while it was working fine?

             

            Thanks

            Sairam Yeturi added a comment - We have a similar issue, while JSD was working fine since last few minutes it keeps throwing this error. Not sure - why it has occurred - while it was working fine?   Thanks

            Jeffrey McAteer added a comment - - edited

            My solution was to SSH into the server, run

            sudo find / -name dbconfig.xml 2>/dev/null

            (This will print the location of dbconfig.xml) then edit it manually with 

            sudo vim /path/to/dbconfig.xml

            If you want a one-liner you could construct something with sed:

            sudo sed -i 's/storage_engine/default_storage_engine/g' $(sudo find / -name dbconfig.xml 2>/dev/null)

            This will change all instances of 'storage_engine' to 'default_storage_engine', which should work for simple setups with only one storage engine.

            Jeffrey McAteer added a comment - - edited My solution was to SSH into the server, run sudo find / -name dbconfig.xml 2>/dev/ null (This will print the location of dbconfig.xml) then edit it manually with  sudo vim /path/to/dbconfig.xml If you want a one-liner you could construct something with sed: sudo sed -i 's/storage_engine/default_storage_engine/g' $(sudo find / -name dbconfig.xml 2>/dev/ null ) This will change all instances of 'storage_engine' to 'default_storage_engine', which should work for simple setups with only one storage engine.

            I've just run into this. So, what is the correct way of doing this?

            Jacob Saaby Nielsen added a comment - I've just run into this. So, what is the correct way of doing this?

            MattS added a comment -

            The MySQL docs aren't very clear either

            MattS added a comment - The MySQL docs aren't very clear either

              wthompson Wazza
              aheinzer Andy Heinzer
              Affected customers:
              6 This affects my team
              Watchers:
              13 Start watching this issue

                Created:
                Updated:
                Resolved: