unbale to upgrade the GoCD-server version from 21.3.0 to

46 views
Skip to first unread message

pradeep devaraj

unread,
Jan 20, 2023, 5:40:57 AM1/20/23
to go-cd

Does anyone know how to fix this issue.


[root@pa2unx01026h6eu2 ~]# rpm -qa | grep go-server

go-server-21.3.0-13067.noarch

[root@pa2unx01026h6eu2 go-server]# java --version

openjdk 11.0.16.1 2022-08-12 LTS

OpenJDK Runtime Environment (Red_Hat-11.0.16.1.1-1.el7_9) (build 11.0.16.1+1-LTS)

OpenJDK 64-Bit Server VM (Red_Hat-11.0.16.1.1-1.el7_9) (build 11.0.16.1+1-LTS, mixed mode, sharing)

 

After upgrading the GoCD-server to go-server-22.3.0, its failing with below error.

Go-server.log

 

2023-01-20 10:23:47,936 WARN  [WrapperJarAppMain] GoConfigMigrator:98 - Error upgrading config file, trying to upgrade using the versioned config file.

2023-01-20 10:23:47,988 INFO  [WrapperJarAppMain] GoConfigMigration:80 - Config file is backed up, location: /etc/go/cruise-config.xml.invalid.2023-01-20-10-23-47

2023-01-20 10:23:48,113 WARN  [WrapperJarAppMain] GoConfigMigrator:137 - Go encountered an invalid configuration file while starting up. The invalid configuration file has been renamed to ‘/etc/go/cruise-config.xml.invalid.2023-01-20-10-23-47’ and a new configuration file has been automatically created using the last good configuration. Cause: 'Unable to make field private static final long java.util.HashMap.serialVersionUID accessible: module java.base does not "opens java.util" to unnamed module @6303cc0a'

2023-01-20 10:23:48,367 INFO  [WrapperJarAppMain] GoConfigMigration:94 - Upgrading config file from version 139 to version 139

2023-01-20 10:23:49,024 INFO  [WrapperJarAppMain] GoConfigMigration:102 - Finished upgrading config file

2023-01-20 10:23:49,024 INFO  [WrapperJarAppMain] GoConfigMigrator:106 - [Config Save] Starting Config Save post upgrade using FullConfigSaveNormalFlow

2023-01-20 10:23:51,808 WARN  [WrapperJarAppMain] GoConfigMigrator:126 - The versioned config file could be invalid or migrating the versioned config resulted in an invalid configuration

2023-01-20 10:23:51,810 ERROR [WrapperJarAppMain] GoConfigMigrator:64 - There are errors in the Cruise config file.  Please read the error message and correct the errors.

Once fixed, please restart GoCD.

Error: Unable to make field private static final long java.util.HashMap.serialVersionUID accessible: module java.base does not "opens java.util" to unnamed module @6303cc0a

2023-01-20 10:23:51,811 ERROR [Thread-79] PluginLoader:74 - Failed to load plugin: plugins_work/gocd-json-config-plugin.jar

java.lang.NullPointerException: Cannot invoke "com.thoughtworks.go.config.CruiseConfig.getConfigRepos()" because the return value of "com.thoughtworks.go.server.service.GoConfigService.getConfigForEditing()" is null

        at com.thoughtworks.go.server.service.ConfigRepoService.getConfigRepos(ConfigRepoService.java:92)

        at com.thoughtworks.go.server.service.ConfigRepositoryInitializer.initializeConfigRepositories(ConfigRepositoryInitializer.java:109)

        at com.thoughtworks.go.server.service.ConfigRepositoryInitializer.pluginLoaded(ConfigRepositoryInitializer.java:90)

        at com.thoughtworks.go.plugin.infra.PluginLoader.lambda$doPostBundleInstallActivities$0(PluginLoader.java:113)

        at org.apache.commons.collections4.IteratorUtils.forEach(IteratorUtils.java:1224)

        at org.apache.commons.collections4.IterableUtils.forEach(IterableUtils.java:585)

        at com.thoughtworks.go.plugin.infra.PluginLoader.lambda$doPostBundleInstallActivities$1(PluginLoader.java:113)

        at org.apache.commons.collections4.IteratorUtils.forEach(IteratorUtils.java:1224)

        at org.apache.commons.collections4.IterableUtils.forEach(IterableUtils.java:585)

        at com.thoughtworks.go.plugin.infra.PluginLoader.doPostBundleInstallActivities(PluginLoader.java:112)

        at com.thoughtworks.go.plugin.infra.PluginLoader.loadPlugin(PluginLoader.java:70)

        at com.thoughtworks.go.plugin.infra.listeners.DefaultPluginJarChangeListener.refreshBundle(DefaultPluginJarChangeListener.java:180)

        at com.thoughtworks.go.plugin.infra.listeners.DefaultPluginJarChangeListener.addPlugin(DefaultPluginJarChangeListener.java:123)

        at com.thoughtworks.go.plugin.infra.listeners.DefaultPluginJarChangeListener.pluginJarAdded(DefaultPluginJarChangeListener.java:72)

        at com.thoughtworks.go.plugin.infra.monitor.DefaultPluginJarLocationMonitor$PluginLocationMonitorThread$DoOnAllListeners.lambda$pluginJarAdded$0(DefaultPluginJarLocationMonitor.java:237)

        at com.thoughtworks.go.plugin.infra.monitor.DefaultPluginJarLocationMonitor$PluginLocationMonitorThread$DoOnAllListeners.doOnAllPluginJarChangeListener(DefaultPluginJarLocationMonitor.java:258)

        at com.thoughtworks.go.plugin.infra.monitor.DefaultPluginJarLocationMonitor$PluginLocationMonitorThread$DoOnAllListeners.pluginJarAdded(DefaultPluginJarLocationMonitor.java:237)

        at com.thoughtworks.go.plugin.infra.monitor.PluginChangeNotifier.lambda$notify$0(PluginChangeNotifier.java:33)

        at java.base/java.lang.Iterable.forEach(Unknown Source)

        at com.thoughtworks.go.plugin.infra.monitor.PluginChangeNotifier.notify(PluginChangeNotifier.java:30)

        at com.thoughtworks.go.plugin.infra.monitor.DefaultPluginJarLocationMonitor$PluginLocationMonitorThread.loadAndNotifyPluginsFrom(DefaultPluginJarLocationMonitor.java:204)

        at com.thoughtworks.go.plugin.infra.monitor.DefaultPluginJarLocationMonitor$PluginLocationMonitorThread.oneShot(DefaultPluginJarLocationMonitor.java:191)

        at com.thoughtworks.go.plugin.infra.monitor.DefaultPluginJarLocationMonitor$PluginLocationMonitorThread.run(DefaultPluginJarLocationMonitor.java:177)

Chad Wilson

unread,
Jan 20, 2023, 6:59:21 AM1/20/23
to go...@googlegroups.com
That error means you are running your server with Java 16+, not with Java 11. It's not possible to get that error on Java 11. The server is probably using the bundled Java version within the rpm, which is Java 17 - which is the default behaviour.

Anyway, if you are getting that error, it's possible you have overridden or customised the server startup "wrapper" properties in such a way that the default properties are not being used. Background as to why this happens: https://github.com/gocd/gocd/issues/10265

If you can share what you have in /usr/share/go-server/wrapper-config/wrapper-properties.conf I can possibly advise/suggest why this happened. Usually it is because folks have overridden wrapper.java.additional.1, wrapper.java.additional.2 etc (with low integer numbers) rather than starting their additional arguments at 100/101 etc to avoid clashes. In effect they are overriding the default args required for GoCD server to work correctly.

-Chad

--
You received this message because you are subscribed to the Google Groups "go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email to go-cd+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/go-cd/9200447b-11b0-4f6e-9ad0-f8e9862d8806n%40googlegroups.com.

pradeep devaraj

unread,
Jan 23, 2023, 4:35:51 AM1/23/23
to go-cd
Hi  Chad,

Please find the below wrapper-properties.conf   (/usr/share/go-server/wrapper-config/wrapper-properties.conf )  file and suggest  us. 

# Use this file to configure your GoCD server
# See the `wrapper-properties.conf.example` file for the configuration syntax
# This is an example configuration file to override any GoCD configuration.

# For a detailed description about setting various environment variables, see the page at
# https://wrapper.tanukisoftware.com/doc/english/props-envvars.html

# For a detailed description about setting JVM options and system properties, see the page at
# https://wrapper.tanukisoftware.com/doc/english/props-jvm.html

# To use a custom JVM:
# wrapper.java.command=/path/to/java

# To set any environment variables of your choice use the following syntax
#set.SOME_ENVIRONMENT_VARIABLE=some-value
#set.GRADLE_HOME=/path/to/gradle
#set.M2_HOME=C:\apache-maven-3.2.1
#set.MAVEN_OPTS=-Xmx1048m -Xms256m -XX:MaxPermSize=312M

# Appending to existing environment variables:
# This config supports environment variable expansion at run time within the values of any environment variable.
# To maintain the platform independent nature of this configuration file, the Windows syntax is used for all platforms.

# On windows:
#set.PATH=..\lib;%PATH%

# On Unix/Linux/macOS. Note that you must use %PATH%, and not $PATH, as you'd normally do on this platform
#set.PATH=../lib:%PATH%

# Set any system properties. We recommend that you begin with the index `100` and increment the index for each system property
#wrapper.java.additional.100=-Dcom.example.enabled=true
#wrapper.java.additional.101=-Dcom.example.name=bob

# If a property contains quotes, these can be stripped out, but this works only on Unix/Linux/macOS
#wrapper.java.additional.103=-Dmyapp.data="../MyApp Home"
#wrapper.java.additional.104.stripquotes=TRUE

# Set a memory limit of 8GB (usually needed on your GoCD server for large setups). We recommend that you do not use more than half your system memory.
#wrapper.java.additional.2=-Xmx8g
wrapper.java.additional.105=-Xmx8G


#wrapper.java.additional.100=-Xms4g

go.config.repo.gc.periodic=true
go.config.repo.gc.cron=0 0 7 ? * SUN

Chad Wilson

unread,
Jan 23, 2023, 7:50:09 AM1/23/23
to go...@googlegroups.com
It should be fine with those settings as currently commented/uncommented below (i.e only wrapper.java.additional.105=-Xmx8G uncommented). You should not be getting any errors like "Unable to make field private static final long java.util.HashMap.serialVersionUID accessible:" with that configuration. Are you only getting different errors now?

Note the other errors ("There are errors in the Cruise config file") in your original log file below. After ensuring you have the correct start arguments in wrapper-properties.conf you will probably need to restore your config backup from before you attempted the upgrade and then try to start the server again.

-Chad

Reply all
Reply to author
Forward
0 new messages