Released: April 1, 2020
End of life: April 1, 2021
This minor release improves stability and performance, and includes fixes for several issues, as well as small changes described below.
Resolved issues
# |
Module version |
Topic/keyword |
Issue and resolution |
Affect version |
|---|---|---|---|---|
1 |
Automation 5.0.2001 |
HAM AstroTimer condition |
AstroTimer condition was satisfied only once before sunset or sunrise. |
SDK 9.0.0 |
2 |
Cameras 4.4.4 |
offline cameras |
When a camera is unplugged, a status check is performed regularly, to see if it has been plugged back in. |
SDK 9.0.0 |
3 |
Core 1.3.7 |
com.prosyst.util.ref.Log |
There was a security error about missing permission to get org.osgi.service.log.LogService when logging through com.prosyst.util.ref.Log. This is now fixed by using privileged calls. |
SDK 9.3.2 |
4 |
Core 1.3.7 |
com.prosyst.util.ref.Log |
When setting log level via system properties, the debug logs do not show. The com.prosyst.util.ref.Log#setLogLevel(int loglevel) was modified to use configurations from the ConfigurationAdmin for different bundles and that resolved the issue. |
SDK 9.3.2 |
5 |
Core 1.3.7 |
com.prosyst.util.ref.Log |
There was a race condition between com.prosyst.util.ref.Log and framework service registry. This has been fixed by improving tracking of org.osgi.service.log.LogService. |
SDK 9.3.2 |
6 |
Device Access 3.4.3 |
REST |
The Device Access didn't send any REST event when the framework was started with security. Now it is fixed. |
SDK 9.0.0 |
7 |
Framework 8.5.4 |
storage error |
There was an error loading framework storage, when a bundle(s) with Eclipse-BuddyPolicy header was present, causing the bundles to be re-resolved. This is now fixed. |
SDK 9.3.2 |
8 |
KNX 5.4.1 |
KNX datapoints |
Previous versions of KNX bundles have no special handling of invalid values for certain datapoint types. There was a value validity check on the KNX DPT API, but not Device Access abstraction layer. |
SDK 9.0.0 |
9 |
KNX 5.4.1 |
KNXnet/IP discovery |
KNXnet/IP discovery was working successfully only inside local network and failed to discover KNXnet/IP servers through a more complex network setup. |
SDK 9.0.0 |
10 |
SHIP 2.2.8 |
SHIP device status |
In some rare cases it was possible that the status of a SHIP device remained ONLINE even though the underlying SHIP connectivity was disabled on the physical device and SHIP connection was closed. This is now fixed and SHIP device status is reported as expected. |
SDK 9.0.0 |
11 |
SHIP 2.2.8 |
required bundle permissions |
The com.prosyst.mbs.ship.driver.commands bundle was missing required permissions and was not working as expected when OSGi framework was started with Java Security Manager enabled. This is now fixed. |
SDK 9.0.0 |
12 |
SHIP 2.2.8 |
SHIP websockets fragment size |
If the system property of SHIP websockets fragment size had an invalid value, the SHIP client and server implementations did not fallback to default fragment size. That might lead to unexpected runtime errors. Now it is fixed. |
SDK 9.0.0 |
13 |
SPINE 2.4.3 |
required bundle permissions |
Some SPINE bundles were missing required permissions and were not working as expected when OSGi framework was started with Java Security Manager enabled. This is now fixed with updated bundles and permissions added accordingly. |
SDK 9.0.0 |
14 |
WebSockets 1.1.8 |
maximum open connections |
A race condition, when WebSocket connection is closed before subscription was fully initialized, resulted in failure to decrement the open connections counter. |
SDK 9.3.1 |
15 |
Z-Wave 5.0.10 |
Custom Device Classes or |
When a device is securely included, all custom provided Device Classes or Device Items that do not define a specific Command Class ID (i.e. annotated with @ZWaveCommandClassId) are registered both in the root and secure child device. This is now fixed. |
SDK 9.0.0 |
16 |
Z-Wave 5.0.10 |
pre-included devices |
Battery-powered devices already included in the controller network before starting the Z-Wave stack are never configured and associated even after the device sends a Wake Up Notification. This is now fixed. |
SDK 9.0.0 |
17 |
Z-Wave 5.0.10 |
Log Configuration |
Log Configuration instances were left behind undeleted after Z-Wave bundles are uninstalled. This is now fixed. |
SDK 9.0.0 |
18 |
Z-Wave 5.0.9 |
custom Device Class/Device Item implementation |
If a custom Device Class or Device Item implementation was provided, but did not fully match the manufacturer indicating properties, neither custom nor default Device Class implementation instances were created. This is now fixed. |
SDK 9.0.0 |
19 |
Z-Wave 5.0.9 |
Color Switch Device Item |
No ColorSwitch Device Item was registered for devices, supporting versions higher than 1 of the respective Z-Wave Command Class. This is now fixed. |
SDK 9.0.0 |
20 |
Z-Wave 5.0.9 |
missing system only Device Items or |
The system Device Class Objects or (depending on the setup) Device Items were missing after the Adapter bundle was being updated. They appeared again after restarting the framework. This is now fixed. |
SDK 9.0.0 |
21 |
Z-Wave 5.0.9 |
Blood Pressure sensor metrics |
Quantity metric values and Item attributes within the Device Access layer regarding Blood Pressure sensor type were incorrectly represented. This is now fixed. |
SDK 9.0.0 |
Known issue
System Integrity Protection (SIP) in macOS: Affecting Gateway Software version 9.3.X, when System Integrity Protection on Mac OS X is turned on, bundles with native libraries may throw an Error, when libraries are loaded and it may lead to malfunctioning of the bundles. System Integrity Protection has to be disabled in order to use the functionality provided by the native libraries from the bundles on macOS/OS X since version 10.11 (OS X El Capitan).
Other changes
JSON-RPC 1.4.2
Fixed a memory leak by adding Inactivity timeout. A new timeout property is provided to JSON Long Polling Subscription Configuration to set an inactivity timeout for the subscriptions. It protects from buggy applications that do not call a unsubscribe method.
OSGi 1.5.2
Fixed memory consumption and execution time for slf4j bundle. If the log level is not enabled, creation of any log entries is omitted, nor the creation of the log message is executed.
REST 2.0.10
Fixed the error details that were not included in responses. Now the details are included, but with omitted stacktrace. The stacktrace field can be included, when the new system property mbs.webservices.rest.errors.includeStacktrace is set to "true". Its default value is "false".
SHIP 2.2.8
Added more log messages while handling links to SHIP nodes, so customers can report problems more precisely.