Unable to Update TeamCity Further After Update to TeamCity Professional 2020.2.2 (build 85899)

Hi,

Some time ago I updated TeamCity Professional to version 2020.2.2 (build 85899). I've been stuck on this version ever since. The /admin/admin.html?item=update page shows the error below:

Checking teamcity-server.log, I see the following error repeated, I imagine for each time I try click "Check for updates" button.
[2023-04-08 11:32:21,544]   WARN -   jetbrains.buildServer.UPDATE - Unable to check for TeamCity updates via  URL "https://www.jetbrains.com/teamcity/update.xml": javax.net.ssl.SSLException: Received close_notify during handshake (enable debug to see stacktrace)
[2023-04-08 11:32:21,545]   WARN -   jetbrains.buildServer.UPDATE - Error while checking new TeamCity version: jetbrains.buildServer.updates.ServerUpdateException: Unable to check for updates via URL "https://www.jetbrains.com/teamcity/update.xml": Received close_notify during handshake (enable debug to see stacktrace)
[2023-04-08 11:32:22,528]   WARN -   jetbrains.buildServer.UPDATE - Unable to check for TeamCity updates via  URL "https://www.jetbrains.com/teamcity/update.xml": javax.net.ssl.SSLException: Received close_notify during handshake (enable debug to see stacktrace)
[2023-04-08 11:32:22,528]   WARN -   jetbrains.buildServer.UPDATE - Error while checking new TeamCity version: jetbrains.buildServer.updates.ServerUpdateException: Unable to check for updates via URL "https://www.jetbrains.com/teamcity/update.xml": Received close_notify during handshake (enable debug to see stacktrace)

My TeamCity server is not running on an HTTPS connection.

What do I do to fix this? I'm stuck now on version 2020.2.2 (build 85899).

0
7 comments
Hi,
It sounds like something is preventing your TeamCity server from establishing a connection to https://www.jetbrains.com/teamcity/update.xml. Are you able to reach this URL from the TeamCity server outside of TeamCity, like from a browser?

Thanks,
Eric
0

Hi Eric, thanks for the suggestion.
That URL loads fine in the browser on the server:

0

Thanks for checking this out. Since we know that the URL can be reached from the server, there must be something else interfering with the connection. Do you know if there are any proxy settings on your TeamCity server? Please check Administration | Diagnostics | Internal Properties from your TeamCity web UI to see if there are any outgoing proxy settings there. Additionally, please check to see if there are any proxy settings in the JVM options configured for your TeamCity server; these would commonly be located in the environment variable, TEAMCITY_SERVER_OPTS

 

0

Hi Eric.

I've checked the Internal Properties and there are no references to outgoing proxy settings. See below for a complete list:

log4j.configuration=file:../conf/teamcity-server-log4j.xml
teamcity.configuration.path=../conf/teamcity-startup.properties
teamcity.data.path=C:\ProgramData\JetBrains\TeamCity
teamcity_logs=c:\TeamCity\bin\..\logs
 
awt.toolkit=sun.awt.windows.WToolkit
catalina.base=C:\TeamCity
catalina.home=C:\TeamCity
catalina.useNaming=true
common.loader="${catalina.base}/lib","${catalina.base}/lib/*.jar","${catalina.home}/lib","${catalina.home}/lib/*.jar"
file.encoding=Cp1252
file.encoding.pkg=sun.io
file.separator=\
ignore.endorsed.dirs=
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.awt.printerjob=sun.awt.windows.WPrinterJob
java.class.path=c:\TeamCity\bin\..\bin\bootstrap.jar;c:\TeamCity\bin\..\bin\tomcat-juli.jar
java.class.version=52.0
java.endorsed.dirs=c:\TeamCity\jre\lib\endorsed
java.ext.dirs=c:\TeamCity\jre\lib\ext;C:\Windows\Sun\Java\lib\ext
java.home=c:\TeamCity\jre
java.io.tmpdir=c:\TeamCity\bin\..\temp
java.library.path=c:\TeamCity\jre\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System3…
java.naming.factory.initial=org.apache.naming.java.javaURLContextFactory
java.naming.factory.url.pkgs=org.apache.naming
java.protocol.handler.pkgs=org.apache.catalina.webresources
java.runtime.name=OpenJDK Runtime Environment
java.runtime.version=1.8.0_252-b09
java.specification.name=Java Platform API Specification
java.specification.vendor=Oracle Corporation
java.specification.version=1.8
java.util.concurrent.ForkJoinPool.common.threadFactory=org.apache.catalina.startup.SafeForkJoinWorkerThreadFactory
java.util.logging.config.file=c:\TeamCity\bin\..\conf\logging.properties
java.util.logging.manager=org.apache.juli.ClassLoaderLogManager
java.vendor=Amazon.com Inc.
java.version=1.8.0_252
java.vm.info=mixed mode
java.vm.name=OpenJDK 64-Bit Server VM
java.vm.specification.name=Java Virtual Machine Specification
java.vm.specification.vendor=Oracle Corporation
java.vm.specification.version=1.8
java.vm.vendor=Amazon.com Inc.
java.vm.version=25.252-b09
jdk.tls.ephemeralDHKeySize=2048
line.separator=
os.arch=amd64
os.name=Windows Server 2019
os.version=10.0
package.access=sun.,org.apache.catalina.,org.apache.coyote.,org.apache.jasper.,org.apache.tomcat.
package.definition=sun.,java.,org.apache.catalina.,org.apache.coyote.,org.apache.jasper.,org.apache.naming.,org.apache.tomcat.
path.separator=;
server.loader=
shared.loader=
sun.arch.data.model=64
sun.boot.class.path=c:\TeamCity\jre\lib\resources.jar;c:\TeamCity\jre\lib\rt.jar;c:\TeamCity\jre\lib\sunrsasign.jar;c:\TeamCity\jre\lib\jsse.jar;c:\TeamCity\jre\lib\jce.…
sun.boot.library.path=c:\TeamCity\jre\bin
sun.cpu.endian=little
sun.cpu.isalist=amd64
sun.desktop=windows
sun.io.unicode.encoding=UnicodeLittle
sun.java.command=org.apache.catalina.startup.Bootstrap start
sun.java.launcher=SUN_STANDARD
sun.jnu.encoding=Cp1252
sun.management.compiler=HotSpot 64-Bit Tiered Compilers
sun.os.patch.level=
tomcat.util.buf.StringCache.byte.enabled=true
tomcat.util.scan.StandardJarScanFilter.jarsToScan=log4j-taglib*.jar,log4j-web*.jar,log4javascript*.jar,slf4j-taglib*.jar
tomcat.util.scan.StandardJarScanFilter.jarsToSkip=annotations-api.jar,ant-junit*.jar,ant-launcher.jar,ant.jar,asm-*.jar,aspectj*.jar,bootstrap.jar,catalina-ant.jar,catalina-ha.jar,catalina-jmx-remote…
user.country=US
user.dir=c:\TeamCity\bin
user.home=C:\Users\Administrator
user.language=en
user.name=Administrator
user.script=
user.timezone=Africa/Harare
user.variant=
 
I also don't see an environment variable for TEAMCITY_SERVER_OPTS.
0

Since it looks like you do not have any outgoing proxy in place, there could be another reason for the error message: javax.net.ssl.SSLException: Received close_notify during handshake. 

This error can also come up if the Java running TeamCity cannot establish a handshake. The SSL handshake is the process where the client and server agree on the encryption and decryption methods for secure communication.

With this in mind, one item to check is the version of Java in use for your TeamCity installation. It does appear that you're running an older version of Amazon Corretto 8, 1.8.0_252. As a next step, I would suggest upgrading this to a more recent version of Amazon Corretto. Please find the details on this process in our documentation here: Install Non-Bundled Version of Java. I would also recommend switching to Amazon Corretto 11 because support for Java 8 will be deprecated soon

0

Thanks Eric. I'll try that next and get back to you.

-1

what was the resolution for this solution ? I am experiencing same issue 

1

Please sign in to leave a comment.