Release Notes > Release Notes for ThingWorx Platform 9.0 > Enhancements and Fixed Issues in ThingWorx Platform 9.0.16
Enhancements and Fixed Issues in ThingWorx Platform 9.0.16
The following enhancements are part of ThingWorx Platform 9.0.16.
Enhancements
Platform
Improvements To StreamEntryProcessor
The StreamEntryProcessor uses one lock for all access to the queue, and holds the thread on a condition when the queue is full. This would create a backpressure on the underlying queues, resulting in one or more of the following causes:
ThingWorx Platform would get very slow to respond and some parts of the functionality would get into frozen state.
The persistent property queue size would not change
Event queue and/or WSExecution would start to overflow up
Devices would start to go offline.
In the thread dump, you could see lots of threads waiting on socket read, or threads waiting on other threads holding locks.
The only way out of this state is to restart ThingWorx.
Mashup Builder
Security Enhancements
Added replacements for Validator and Expression functions that include new security enhancements. Existing versions of these functions are now labeled as Not Secure.
Added more secure replacements for validators that are used to validate cell content within Grid widgets. You can disable legacy validators for a grid widget using the DisableLegacyValidation property.
The replacements include additional restrictions when using run-time objects and functions. To benefit from the latest security enhancements, we strongly recommend that you replace any non-secure functions or validators in your mashups with the latest standard version. For more information about these changes, see Replacing Non-Secure Expressions in a Mashup.
User Interface
The Reminders panel now displays reminders when an expression uses non-supported objects or functions.
In addition, non-secure expressions are highlighted in the following ways:
A message is displayed when you open a mahsup that contains non-secure expressions.
On the Functions panel, non-secure functions are grouped under a Not Secure label and awarning triangle is displayed on the panel. You can replace non-secure functions using the Replace button next to the function name.
The following fixed and known issues are part of ThingWorx Platform 9.0.16.
Fixed Issues
Security
Fixed potential security issues, including items proactively identified by the vulnerability scanning software or PTC Quality Assurance testing. Upgrade as soon as possible to take advantage of these important improvements.
PTC has recently implemented a new support policy with respect to Identity and Access Management (IAM) solutions. See the appropriate eSupport center section for more information.
See this technical support article for important recommendations regarding the use and update of third-party software for ThingWorx.
Platform
Tracking Number
Fixed an issue related to the inconsistent selection of the first row using AutoSelectFirstRow option.
TW-95129
Fixed an issue related to the database connection not released hanging in the Client - Client Read state and more queries consuming available database connections.
TW-94936
Fixed an issue related to Azure upgrade scripts with managed instance name.
TW-94755
Fixed an issue related to multiple threads are deadlocked attempting to invoke Network Get AddConnection and DeleteConnection APIs
TW-94350
Fixed an issue related to logout function not behaving properly when used with auto-refresh option.
TW-93764
Mashup Builder
Tracking Number
Fixed an issue related to Mashup loaded executed twice and cause duplication of data on MacOS and iPad.
TW-94656
Fixed an issue related to collection widget not refreshing after scrolling up or reloading the page.
TW-94621
Known Issues and Limitations
The following items are known issues and are scheduled to be fixed in a future release.
Platform
Tracking Number
Failure to sign Jar file causes remote access session to fail to start. It should be noted that as of ThingWorx 9.2, JNLP connections are no longer supported in ThingWorx due to the move to Java 11.
TW-93569
QueryDataTableEntries does not return the proper result set when using the Tag value parameter if the Tag term is found in multiple Vocabularies. For example; If "vocab1" and "vocab2" both have the term: "Term1"; search on "vocab1:Term1" will match any entry that has Term1 as a tag, regardless of specified vocabulary.
TW-95681
Due to changes implemented in MSSQL and H2 database index, QueryDatatableEntities and FindDataTableEntities do not return the same values as in previous releases.
TW-95476
When using the ReadFromEdge setting for a property defined on a remote thing and connected through Kepware, if the connection to an edge device is broken a race condition can exist between ThingWorx and Kepware, which blocks updating the property value in ThingWorx.
TW-78472
Was this helpful?