Upgrade path (6.7.3 to 7.9.1)?

Hi all,
I want to upgrade from version 6.7.3 to 7.9.1 and it’s a bit confusing with (you have to go through all the LTS Versions) ??
Does this mean I have to install:

  • 6.7.5
  • 7.9
  • 7.9.1

Thanks for some clearification !
acki4711

Hi,

from your current version 6.7.3
upgrade to 6.7.7, the former LTS
then upgrade to 7.9.1, the current LTS

see
https://docs.sonarqube.org/latest/setup/upgrading/
https://docs.sonarqube.org/latest/setup/upgrade-notes/

Gilbert

Hello @acki4711,

Let me correct a statement from @Rebse (whose active contribution to the SonarQube community is certainly much appreciated): You can skip the step to upgrade from 6.7.3 to 6.7.7. There’s a direct upgrade path from 6.7.3 to 7.9.1.
For upgrade matters, you can always forget/ignore the 3rd digit in the version to determine your upgrade path. In your particular case, you can upgrade from any 6.7.* to any 7.9.*

Cheers, Olivier

Hello @OlivierK,

sorry, got this wrong from https://docs.sonarqube.org/latest/setup/upgrading/

However, if you have an LTS version in your migration path, you must first migrate to this LTS and then migrate to your target version.

as 6.7.7 ain’t LTS anymore but 7.9.1

Gilbert

OK,
Upgreaded and having troubles to make 7.9.3 to start.
What I did:

  • Installed new sonarqube version into new directory
  • Copied settings from 6.7.3 sonar.properties file to new 7.9.3 sonar.propterties file
  • installed jdk13
  • modified wrapper.conf to point to correkt java (wrapper.java.command=C:\Program Files\Java\jdk13\bin\java)
  • run UninstallNtService.bat from 6.7.3
  • run InstallNtService.bat from 7.9.3
  • run StartJTService.bat

sonar.log:

--> Wrapper Started as Service
Launching a JVM...
Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
  Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.

2019.09.19 13:52:19 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory C:\sonarqube\sonarqube-7.9.1\temp
2019.09.19 13:52:19 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on /127.0.0.1:9001
2019.09.19 13:52:19 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [C:\sonarqube\sonarqube-7.9.1\elasticsearch]: C:\Program Files\Java\jdk13\bin\java -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -XX:+AlwaysPreTouch -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -XX:-OmitStackTraceInFastThrow -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Djava.io.tmpdir=C:\sonarqube\sonarqube-7.9.1\temp -XX:ErrorFile=../logs/es_hs_err_pid%p.log -Des.enforce.bootstrap.checks=true -Xms512m -Xmx512m -XX:+HeapDumpOnOutOfMemoryError -Delasticsearch -Des.path.home=C:\sonarqube\sonarqube-7.9.1\elasticsearch -Des.path.conf=C:\sonarqube\sonarqube-7.9.1\temp\conf\es -cp lib/* org.elasticsearch.bootstrap.Elasticsearch
2019.09.19 13:52:20 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
2019.09.19 13:52:20 INFO  app[][o.e.p.PluginsService] no modules loaded
2019.09.19 13:52:20 INFO  app[][o.e.p.PluginsService] loaded plugin [org.elasticsearch.transport.Netty4Plugin]
2019.09.19 13:52:32 WARN  app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 1
2019.09.19 13:52:32 INFO  app[][o.s.a.SchedulerImpl] Process[es] is stopped
2019.09.19 13:52:32 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
<-- Wrapper Stopped

es.log:

2019.09.19 13:52:23 INFO  es[][o.e.e.NodeEnvironment] using [1] data paths, mounts [[SYSTEM (C:)]], net usable_space [27.4gb], net total_space [149.9gb], types [NTFS]
2019.09.19 13:52:23 INFO  es[][o.e.e.NodeEnvironment] heap size [495.3mb], compressed ordinary object pointers [true]
2019.09.19 13:52:23 INFO  es[][o.e.n.Node] node name [sonarqube], node ID [NT9uUUvDSOeWdLKm2mBFPQ]
2019.09.19 13:52:23 INFO  es[][o.e.n.Node] version[6.8.0], pid[8416], build[unknown/unknown/65b6179/2019-05-15T20:06:13.172855Z], OS[Windows Server 2012 R2/6.3/amd64], JVM[Oracle Corporation/Java HotSpot(TM) 64-Bit Server VM/13/13+33]
2019.09.19 13:52:23 INFO  es[][o.e.n.Node] JVM arguments [-XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -Des.networkaddress.cache.ttl=60, -Des.networkaddress.cache.negative.ttl=10, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Djava.io.tmpdir=C:\sonarqube\sonarqube-7.9.1\temp, -XX:ErrorFile=../logs/es_hs_err_pid%p.log, -Des.enforce.bootstrap.checks=true, -Xms512m, -Xmx512m, -XX:+HeapDumpOnOutOfMemoryError, -Delasticsearch, -Des.path.home=C:\sonarqube\sonarqube-7.9.1\elasticsearch, -Des.path.conf=C:\sonarqube\sonarqube-7.9.1\temp\conf\es]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] loaded module [analysis-common]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] loaded module [lang-painless]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] loaded module [mapper-extras]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] loaded module [parent-join]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] loaded module [percolator]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] loaded module [reindex]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] loaded module [repository-url]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] loaded module [transport-netty4]
2019.09.19 13:52:26 INFO  es[][o.e.p.PluginsService] no plugins loaded
2019.09.19 13:52:30 WARN  es[][o.e.d.c.s.Settings] [http.enabled] setting was deprecated in Elasticsearch and will be removed in a future release! See the breaking changes documentation for the next major version.
2019.09.19 13:52:32 INFO  es[][o.e.d.DiscoveryModule] using discovery type [zen] and host providers [settings]
2019.09.19 13:52:32 ERROR es[][o.e.b.Bootstrap] Guice Exception: java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "accessClassInPackage.jdk.internal.vm.annotation")
	at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
	at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)
	at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)
	at java.base/java.lang.SecurityManager.checkPackageAccess(SecurityManager.java:1324)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:174)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
	at java.base/java.lang.Class.forName0(Native Method)
	at java.base/java.lang.Class.forName(Class.java:416)
	at java.base/sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114)
	at java.base/sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125)
	at java.base/sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
	at java.base/sun.reflect.annotation.AnnotationParser.parseSig(AnnotationParser.java:440)
	at java.base/sun.reflect.annotation.AnnotationParser.parseAnnotation2(AnnotationParser.java:242)
	at java.base/sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:121)
	at java.base/sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:73)
	at java.base/java.lang.reflect.Executable.declaredAnnotations(Executable.java:614)
	at java.base/java.lang.reflect.Executable.declaredAnnotations(Executable.java:612)
	at java.base/java.lang.reflect.Executable.getAnnotation(Executable.java:582)
	at java.base/java.lang.reflect.Method.getAnnotation(Method.java:696)
	at <<<guice>>>
	at org.elasticsearch.node.Node.<init>(Node.java:605)
	at org.elasticsearch.node.Node.<init>(Node.java:266)
	at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:212)
	at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:212)
	at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333)
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159)
	at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150)
	at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86)
	at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124)
	at org.elasticsearch.cli.Command.main(Command.java:90)
	<<<truncated>>>

2019.09.19 13:52:32 WARN  es[][o.e.b.ElasticsearchUncaughtExceptionHandler] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: org.elasticsearch.common.inject.CreationException: Guice creation errors:

1) An exception was caught and reported. Message: access denied ("java.lang.RuntimePermission" "accessClassInPackage.jdk.internal.vm.annotation")
  at _unknown_

1 error
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:163) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.8.0.jar:6.8.0]
	at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:116) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93) ~[elasticsearch-6.8.0.jar:6.8.0]
Caused by: org.elasticsearch.common.inject.CreationException: Guice creation errors:

1) An exception was caught and reported. Message: access denied ("java.lang.RuntimePermission" "accessClassInPackage.jdk.internal.vm.annotation")
  at _unknown_

1 error
	at org.elasticsearch.common.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:361) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.InjectorBuilder.initializeStatically(InjectorBuilder.java:136) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:92) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:96) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:70) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.ModulesBuilder.createInjector(ModulesBuilder.java:42) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.node.Node.<init>(Node.java:605) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.node.Node.<init>(Node.java:266) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:212) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:212) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-6.8.0.jar:6.8.0]
	... 6 more
Caused by: java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "accessClassInPackage.jdk.internal.vm.annotation")
	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472) ~[?:?]
	at java.security.AccessController.checkPermission(AccessController.java:1036) ~[?:?]
	at java.lang.SecurityManager.checkPermission(SecurityManager.java:408) ~[?:?]
	at java.lang.SecurityManager.checkPackageAccess(SecurityManager.java:1324) ~[?:?]
	at jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:174) ~[?:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[?:?]
	at java.lang.Class.forName0(Native Method) ~[?:?]
	at java.lang.Class.forName(Class.java:416) ~[?:?]
	at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114) ~[?:?]
	at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125) ~[?:?]
	at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49) ~[?:?]
	at sun.reflect.annotation.AnnotationParser.parseSig(AnnotationParser.java:440) ~[?:?]
	at sun.reflect.annotation.AnnotationParser.parseAnnotation2(AnnotationParser.java:242) ~[?:?]
	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:121) ~[?:?]
	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:73) ~[?:?]
	at java.lang.reflect.Executable.declaredAnnotations(Executable.java:614) ~[?:?]
	at java.lang.reflect.Executable.declaredAnnotations(Executable.java:612) ~[?:?]
	at java.lang.reflect.Executable.getAnnotation(Executable.java:582) ~[?:?]
	at java.lang.reflect.Method.getAnnotation(Method.java:696) ~[?:?]
	at org.elasticsearch.common.inject.internal.ProviderMethodsModule.getProviderMethods(ProviderMethodsModule.java:87) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.internal.ProviderMethodsModule.configure(ProviderMethodsModule.java:78) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.spi.Elements$RecordingBinder.install(Elements.java:221) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.spi.Elements$RecordingBinder.install(Elements.java:233) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.spi.Elements.getElements(Elements.java:96) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.InjectorShell$Builder.build(InjectorShell.java:142) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:89) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:96) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:70) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.common.inject.ModulesBuilder.createInjector(ModulesBuilder.java:42) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.node.Node.<init>(Node.java:605) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.node.Node.<init>(Node.java:266) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:212) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:212) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) ~[elasticsearch-6.8.0.jar:6.8.0]
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-6.8.0.jar:6.8.0]
	... 6 more

Any help is highly appreciated
TIA acki4711

Hi,

There’s an inaccuracy in the docs; we don’t actually support above Java 11, so please downgrade to Java 11 and it should work.

 
Ann

1 Like

Thanks Ann, downgrading to 11.0.4 solved the problem

1 Like