Sonarqube upgrade from 8.9.1 to latest 9.2.4 on linux server

Must-share information (formatted with Markdown):

  • which versions are you using (SonarQube, Scanner, Plugin, and any relevant extension)
  • what are you trying to achieve
  • what have you tried so far to achieve this

Our current version 8.9.1 on Linux server
Trying to upgrade to 9.2.4 ( for log4j fixes)
We are trying to upgrade on Prod server, we don’t have any dev server to test this upgrade, so we are very cautious on this upgrade. we have only few hours window to complete this on prod.
We need you support and guidance on this.
Planning to do this Monday evening 5 pm CST
Can you please send us upgrade procedure?
we will take back up server and DB.
What other files we need to back up and restore to new version so that our config will be same.

Thank you and appreciate your help.

Hi @subramadluru ,

I’d recommend testing the upgrade first if you’re not very familiar with upgrading SonarQube.

Please review the upgrade guide:
https://docs.sonarqube.org/latest/setup/before-you-upgrade/
https://docs.sonarqube.org/latest/setup/upgrading/

Don’t forget to go to http://yourSonarQubeServerURL/setup after the upgrade to make sure the database is upgraded to match the new server version.

You can go straight from 8.9.1 to 9.2.4. Or you could stay on the LTS release path and just upgrade to 8.9.6 to get the log4j fixes.

WIthout knowing how your current version of SonarQube was installed (zip package, Docker, Helm, ???) it’s hard to make further recommendations. If possible, try to make a copy on a workstation (you mentioned that you don’t have a dev server) and run the upgrade there. If everything works, repeat the same steps on the Prod server.

2 Likes

@cba , Thank you for the update.

Last time we installed with zip package.
Here is the support i got from Joe last time, we had couple of issues, so wanted to avoid them this time.

which one do you recommend LTS version or normal version? which is better for us? what is difference between these 2, is there any advantage of using normal instead of LTS?
We are using MSSQL DB, is there need to upgrade our DB version for this upgrade?
we are on SQL 2016, Microsoft SQL Server -Database Version - 13.00.6300, is this good enough?

Since this is linux version, i can’t do this on my work station.
Planning to do this tomorrow evening around 5 pm CST, will you be available at that time, incase of any issues, i will post them here.
Thank you.

Hi @subramadluru ,

The LTS version will have less frequent updates; this branch receives only security issues but no new features. Since updating seems to be a risky task for you, I’d recommend staying on LTS.

MSSQL Server 2016 is still supported by 8.9.x, no need to update that.

I can’t guarantee that I’ll be able to help at 5pm CST tomorrow, but if I catch an update here I’ll take a look.

1 Like

@cba
Thank you for the update.
In that case, we want to update to v9.2.4 to get new features also.
will this upgrade needs SQL update?
If i can start the upgrade today at 4 pm, will you be available? if you are not, who else can monitor this and help me?
Thank you.

Hi @subramadluru ,

Please review the database compatibility section here:
https://docs.sonarqube.org/latest/requirements/requirements/

I’m a forum user, just like you, and will be working in my regular job at this time. If you need dedicated support at a particular time, you may want to reach out directly to the commercial support team:

3 Likes

@cba ,Thank you, I thought you are sonarqube support person, who is helping with answering my queries.
No problem, thank you for your help. Appreciate it.

@cba our upgrade is completed, thank you for your help.

2 Likes

@Joe
After upgrade to 9.2.4, our jenkins builds are failing, can you help me to fix this pls.
Here are the errors i get in jenkin job :
After upgrading, do i have to update anything in jenkins server?

Thank you

14:14:12  [INFO] --- sonar-maven-plugin:3.6.0.1398:sonar (default-cli) @ app-name ---
14:14:12  [INFO] User cache: /home/jenkinsuser/.sonar/cache
14:14:13  [INFO] SonarQube version: 9.2.4
14:14:13  [INFO] Default locale: "en_US", source code encoding: "UTF-8"
14:14:13  [INFO] ------------------------------------------------------------------------
14:14:13  [INFO] BUILD FAILURE
14:14:13  [INFO] ------------------------------------------------------------------------
14:14:13  [INFO] Total time:  59.519 s
14:14:13  [INFO] Finished at: 2022-01-13T14:14:12-06:00
14:14:13  [INFO] ------------------------------------------------------------------------
14:14:13  [ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar (default-cli) on project app-name: Execution default-cli of goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar failed: An API incompatibility was encountered while executing org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar: java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
14:14:13  [ERROR] -----------------------------------------------------
14:14:13  [ERROR] realm =    plugin>org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398
14:14:13  [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
14:14:13  [ERROR] urls[0] = file:/tmp/.m2/org/sonarsource/scanner/maven/sonar-maven-plugin/3.6.0.1398/sonar-maven-plugin-3.6.0.1398.jar
14:14:13  [ERROR] urls[1] = file:/tmp/.m2/org/sonatype/plexus/plexus-sec-dispatcher/1.4/plexus-sec-dispatcher-1.4.jar
14:14:13  [ERROR] urls[2] = file:/tmp/.m2/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
14:14:13  [ERROR] urls[3] = file:/tmp/.m2/org/codehaus/plexus/plexus-utils/3.0.22/plexus-utils-3.0.22.jar
14:14:13  [ERROR] urls[4] = file:/tmp/.m2/org/sonarsource/scanner/api/sonar-scanner-api/2.12.0.1661/sonar-scanner-api-2.12.0.1661.jar
14:14:13  [ERROR] urls[5] = file:/tmp/.m2/commons-lang/commons-lang/2.6/commons-lang-2.6.jar
14:14:13  [ERROR] Number of foreign imports: 1
14:14:13  [ERROR] import: Entry[import  from realm ClassRealm[maven.api, parent: null]]
14:14:13  [ERROR] 

Hi @subramadluru ,

Please create a new thread for any new topics so we can make sure to answer your question without muddling the original topic.

That error you are encountering means that you need to use Java 11 when running mvn sonar:sonar goal. SonarQube 9.0 and higher requires the sonar scanner to use Java 11 now.

Please see Moving Analysis to Java 11 | SonarQube Docs. If you still have problems, please create a new thread.

1 Like