What's new in Apache Karaf runtime 4.3.3?

Apache Karaf runtime 4.3.3 has been released. This release contains a bunch of fixes, dependency updates, and improvement. I will share some highlights in this release.

You can download Apache Karaf runtime here: http://karaf.apache.org/download.html.

The release notes are available here: https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12350142.

JDK17 support for build and runtime

Karaf 4.3.3 now fully supports JDK17 both at build time and runtime. For JDK17 support, we did:
  • new ASM version
  • new JDK options at runtime
  • new packages exported by Karaf

Cleanly close SSH connection

We identified an issue with the Karaf SSH connections. The SSH connections were not cleanly close, and we had to wait the timeout to close the socket.

It means that we can have this state once the SSH client disconnects:

$ netstat | grep 8101
tcp6       0      0 localhost:8101          localhost:47844         CLOSE_WAIT
4.3.3 fixes this issue and the socket is closed as soon as the client disconnects (no need to wait timeout).

Fix memory leak due to BlueprintServiceState

Karaf provides services to check the bundle state: it's the case for blueprint, SCR, ...

These services are used by bundle:diag and bundle:state shell commands.

The blueprint state service registers a bundle listener to receive bundle status change. Unfortunately, in the case of blueprint, the map containing the sttate was never cleanup, resulting to a potential memory leak.

Apache Karaf 4.3.3 fixes this issue and there's "normal" memory consumption by the blueprint state service.

Specs features

Karaf 4.3.3 introduces a new feature repository: the spec features repository.

The purpose of these specs features is to be used by third party projects to easily align the version all together.

This spec features repository is not complete in 4.3.3, we plan new spec features and widely use, but at least we now have a skeleton and start to use it in Karaf and other projects (especially Camel, CXF and ActiveMQ).

Dependency updates

Like in any Karaf release, Karaf 4.3.3 contains a bunch of updated dependency:
  • Felix Framework 6.0.5
  • Felix ConfigAdmin plugin interpolation 1.1.4
  • Felix FileInstall 3.7.0
  • Felix WebConsole 4.6.2
  • Felix SCR 2.1.28
  • Felix Resolver 2.0.4
  • Felix Http Jetty 4.1.10
  • Pax Web 7.3.19/Jetty 9.4.43
  • jackson 2.12.5
  • bouncycastle 1.69
  • Pax Logging 2.0.10
  • jolokia to 1.7.0
  • sjf4j to 1.7.32
  • Spring 5.3.9
  • Aries Proxy 1.1.11
  • Aries JPA 2.7.3
  • Aries Transaction Blueprint 2.3.0
  • commons io to 2.11.0
  • commons-compress to 1.21
  • ASM 9.2
  • narayana 5.12.0.Final


Popular posts from this blog

Quarkus and "meta" extension

Getting started with Apache Karaf Minho

Using Apache Karaf with Kubernetes