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 runtimeKaraf 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 connectionWe 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:
4.3.3 fixes this issue and the socket is closed as soon as the client disconnects (no need to wait timeout).
$ netstat | grep 8101 tcp6 0 0 localhost:8101 localhost:47844 CLOSE_WAIT
Fix memory leak due to BlueprintServiceStateKaraf provides services to check the bundle state: it's the case for blueprint, SCR, ...
These services are used by
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 featuresKaraf 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 updatesLike 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