Release Notes

What’s new in this release?

Check the release log below to see what’s new in this release. We would like to thank everyone who provided feedback and encourage you to continue to send feature requests and suggestions to [email protected].

Click here to Download

DataHub Bugs Fixed:

[DATAHUB-1602] – Web Server does not (re-)initialize properly when deleting licenses triggers switch to demo mode
[DATAHUB-1631] – Null reference exception when removing a full license
[DATAHUB-1708] – Missing timestamp and bdSeq members in Sparkplug NBIRTH messages
[DATAHUB-1725] – OPC A&E does not correctly update filters when you change them in a running connection
[DATAHUB-1726] – OCS4D error when launch WV from RC
[DATAHUB-1729] – WebView logins could produce a spurious error in the script log
[DATAHUB-1730] – Scripting crash calling open() with an invalid file mode
[DATAHUB-1732] – DataHub service crashes during STOP
[DATAHUB-1733] – Alarm events from pedantic UA A&C servers (Siemens S7) are ignored
[DATAHUB-1734] – A&C event is ignored if the A&C server sends a null comment or message field
[DATAHUB-1740] – MQTT advanced parser publish preview does not understand pathData
[DATAHUB-1741] – GetChildren internal call returns a null value for the first child
[DATAHUB-1743] – MQTT advanced parser editor in Remote Config does not contain common functions list
[DATAHUB-1744] – Tunnels do not enforce their maximum message length
[DATAHUB-1746] – MQTT broker does not recognize + as a wildcard at the end of a topic
[DATAHUB-1751] – MQTT publishes topics for valueless branch points
[DATAHUB-1753] – External historian configuration can be corrupted when written
[DATAHUB-1761] – OPC UA server crashes due to thread race with multiple clients connecting and disconnecting
[DATAHUB-1763] – DataHub does not update the value when a new canonical type is set on a point
[DATAHUB-1764] – Funky placement of DataHub gear icon on taskbar
[DATAHUB-1766] – MQTT broker rejects subscriptions for topics beyond 200 characters
[DATAHUB-1767] – MQTT advanced parser default Publish does not work if no Receive schema is defined
[DATAHUB-1770] – OPC UA server rejects connections when client certificate contains unexpected fields
[DATAHUB-1771] – MQTT client sends branch points in snapshot mode
[DATAHUB-1773] – Binary message encoding may cause a crash for point names above 128 characters
[DATAHUB-1779] – MQTT client skips messages when the socket becomes full
[DATAHUB-1782] – Remote Config crashes when dealing with an OPC UA CSV file with duplicate entries
[DATAHUB-1783] – MQTT client does not drop a point that cannot be transmitted due to broker message length limit
[DATAHUB-1789] – MQTT client does not honor the Maximum Update Rate setting
[DATAHUB-1793] – Database native interface has a drawing glitch
[DATAHUB-1794] – A&C methods (ack, confirm, etc.) are missing from browse results

DataHub Improvements:

[DATAHUB-1625] – Add a stateless OPC A&E event type to notifications
[DATAHUB-1684] – Produce an understandable error when a historian is configured to forward from itself
[DATAHUB-1685] – Eliminate the DLL approval step in RC and WebView if the DLLs are properly signed
[DATAHUB-1727] – Add string manipulation functions to Notification and MQTT advanced parser
[DATAHUB-1731] – Add the ability to save the script log to a file
[DATAHUB-1742] – Add a GetChildren call to S-Sharp code when creating ASP in the MQTT advanced parser
[DATAHUB-1745] – Add the ability to send byte arrays to a socket using the .NET API
[DATAHUB-1747] – Web application manager does not store its configuration until it exits
[DATAHUB-1750] – Add a script function to the MQTT advanced parser to get a list of registered points
[DATAHUB-1752] – Add commands to the External Historian to allow script access
[DATAHUB-1754] – Change the label of Primary application ID in Sparkplug client interface
[DATAHUB-1755] – Add an option to set the token lifetime in Google IoT / Clearblade connections
[DATAHUB-1769] – Change the way numbers are coerced to DATE type
[DATAHUB-1774] – Add support for BitConverter to S-Sharp scripting
[DATAHUB-1775] – Change S-Sharp mapping of “Array” from Listto Array
[DATAHUB-1780] – Improve MQTT broker performance
[DATAHUB-1781] – Add freeze_write function to Gamma to improve performance on high-volume point writes
[DATAHUB-1785] – Improve performance and reduce latency in MQTT client
[DATAHUB-1788] – Change queueing in tunnels to reduce memory usage in high load situations

WebView Bugs Fixed:

[WVNET-514] – TrendChart y-axis label orientation
[WVNET-519] – Difference in rendering TextLabel between Silverlight and WPF
[WVNET-520] – WebView fails to start if the log folder is inaccessible or not writable

WebView Improvements:

[WVNET-513] – Entering a Point binding requires specific mouse capture position

DataHub Bugs Fixed:
[DATAHUB-1044] – DataHub crashes if a configuration file is corrupted
[DATAHUB-1653] – MQTT connection to AWS IoT not reading certificates correctly
[DATAHUB-1656] – OPC server produces S_FALSE when querying a specified list of properties
[DATAHUB-1657] – OPC A&E does not correctly propagate dates in condition attributes
[DATAHUB-1658] – OPC UA byte arrays are incorrectly converted to strings
[DATAHUB-1660] – Web server does not correctly serve file names containing UTF-8 characters
[DATAHUB-1661] – Race in Content Manager that causes WebView pages not to update on change
[DATAHUB-1665] – Sorting OPC UA connections in Remote Config causes connections to be duplicated
[DATAHUB-1666] – Remote Config OPC DA manual selection dialog displays checkboxes
[DATAHUB-1667] – InfluxDB V2 connection produces a missing DLL error
[DATAHUB-1668] – Memory leak in the data viewer window
[DATAHUB-1671] – Modbus TCP does not support IPV6 connections
[DATAHUB-1674] – MQTT messages using the advanced parser send boolean values incorrectly
[DATAHUB-1675] – DataHub cannot connect to Kinesis via VPC endpoint
[DATAHUB-1677] – Database query crash when converting a non-timestamp string to a numeric timestamp
[DATAHUB-1679] – The Configure Template dialog in Notifications does not appear in the task bar.
[DATAHUB-1680] – CSV import for external historian is slow with large point lists
[DATAHUB-1681] – The MQTT advanced Parser dialog does not appear in the task bar
[DATAHUB-1686] – Potential crash or inversion when connecting as a Sparkplug B EoN device
[DATAHUB-1687] – Memory leaks when stopping and restarting connections in several plugins
[DATAHUB-1689] – OPC UA A&C client incorrectly treats some alarms as branches and ignores them
[DATAHUB-1691] – Very rare crash when multiple clients read data at the same time
[DATAHUB-1693] – OPC UA client connections do not handle node browse names containing colon characters
[DATAHUB-1695] – OPC UA server sets UserTokenPolicy’s SecurePolicyUri to Basic256 and blocks clients that aren’t using encryption
[DATAHUB-1696] – Alarms created by Notification plugin cannot be acknowledged with incomplete info
[DATAHUB-1699] – Points created by the Modbus plugin should have concrete types
[DATAHUB-1701] – Thread race condition where external historian can cause a crash
[DATAHUB-1702] – WebView cannot log in when the operating system is using the Turkish language
[DATAHUB-1703] – Web server produces time headers in local locale, not invariant locale
[DATAHUB-1704] – Remote Config cannot handle email and database configurations containing unprintable characters
[DATAHUB-1705] – UA manual node selection stores the branch incorrectly – cannot delete nodes
[DATAHUB-1706] – The DataType NodeId associated with Data Viewer datatype Any() is NULL – should be BaseDataType
[DATAHUB-1712] – OPC DA server is visible even if OPC DA support is not installed or not licensed
[DATAHUB-1713] – Possible crash when modifying OPC UA server configuration
[DATAHUB-1715] – OPC UA server creates the wrong hierarchy when creating a new point requested by a UA client
[DATAHUB-1718] – OPC UA generates an event when alarm information becomes Not Connected
[DATAHUB-1719] – Notification throws an error when building an alarm from multiple inputs
[DATAHUB-1720] – Sparkplug application client stops sending updates after NBIRTH/NDEATH/NBIRTH sequence
[DATAHUB-1721] – Sparkplug connections add bdSeq point to the data set
[DATAHUB-1722] – Sparkplug broker disconnects a client unnecessarily after a value change command
DataHub Improvements:
[DATAHUB-1669] – Add sampling to the MQTT client connection
[DATAHUB-1654] – OPC UA server connection configuration is too small for a 1366 x 768 screen
[DATAHUB-1655] – Add an option to transmit DDE using system floating point separators
[DATAHUB-1659] – Add content type JSON and encoding UTF-8 to Azure IoT Hub MQTT messages
[DATAHUB-1663] – Reduce CPU usage in the native data viewer window
[DATAHUB-1676] – Improve throttling when connecting MQTT brokers with usage limits
[DATAHUB-1678] – Change the OPC UA server to allow publishing intervals of 1ms or more in steps of 1ms
[DATAHUB-1683] – Update OpenSSL to version 1.1.1s
[DATAHUB-1690] – Change Sparkplug B to write more efficiently with large payloads
[DATAHUB-1698] – Strip the organization name from user names and treat all user names as Local
[DATAHUB-1710] – Change the OPC UA model to use HasComponent instead of HasProperty for leaf nodes
WebView Bugs Fixed:
[WVNET-355] – ListBox SelectedItem is returning ToString() instead of the native Type
[WVNET-500] – Double clicking on page name in Page Explorer does not open the page
[WVNET-501] – WebView File Browser does not open fully and gives error message
[WVNET-507] – Wpf Toolkit generates a pop-up error message due to an invalid cast once in a while
[WVNET-510] – Blinking a symbol causes all other symbols to blink
[WVNET-511] – WindTurbine demo page is not working (“Specified cast is invalid” script error)

DataHub Bugs Fixed:
[DATAHUB-1651] – Error message installing DataHub v9 over v10
[DATAHUB-1657] – OPC A&E does not correctly propagate dates in condition attributes
[DATAHUB-1677] – Database query crash when converting a non-timestamp string to a numeric timestamp
[DATAHUB-1691] – Very rare crash in OPC UA when multiple clients read data at the same time
[DATAHUB-1693] – OPC UA client connections do not handle node browse names containing colon characters
DataHub Improvements:
[DATAHUB-1683] – Update OpenSSL to version 1.1.1s
WebView Bugs Fixed:
[WVNET-355] – ListBox SelectedItem is returning ToString() instead of the native Type
[WVNET-507] – Wpf Toolkit generates a pop-up error message due to an invalid cast once in a while
[WVNET-508] – WebView throws an error on Cogent.Rectangle symbol
[WVNET-509] – Point data table not showing point value, quality, timestamp
[WVNET-510] – Blinking a symbol causes all other symbols to blink

DataHub Bugs Fixed:
[DATAHUB-1110] – ETK uses errno instead of h_errno for calls to gethostbyname
[DATAHUB-1468] – Not able to log Event log messages in Remote Config – Skkynet DataHub
[DATAHUB-1477] – MQTT broker terminating on start-up – Skkynet DataHub
[DATAHUB-1483] – Engineering units are not transmitted over all tunnels
[DATAHUB-1503] – Skkynet DataHub – OPC UA Computer Name/IP field initialized with Application Resource Name
[DATAHUB-1505] – Skkynet DataHub temporarily opens firewall ports while initializing the first time
[DATAHUB-1506] – Skkynet DataHub – Grafana startup error message
[DATAHUB-1510] – Skkynet DataHub ‘Launch WebView’ button fails in Remote Config
[DATAHUB-1512] – Disabling a feature in Remote Config emits ERROR to event log
[DATAHUB-1521] – In RemoteConfig, user should be able to enable/disable listeners on MQTT Broker ports
[DATAHUB-1528] – MQTT broker does not correctly write text and binary format from points to MQTT topics
[DATAHUB-1541] – Log quickly fills with ERROR messages when Azure file server is unavailable
[DATAHUB-1547] – Templates/Scripting folder is not removed during uninstall
[DATAHUB-1551] – Exception converting native point to .NET point
[DATAHUB-1552] – Error while starting historian log for point
[DATAHUB-1553] – DataHub garbles incoming WebSocket data if the sender uses continuation frames
[DATAHUB-1556] – Cannot connect to AVEVA Historian when modifying point names
[DATAHUB-1557] – OPC UA cannot read alarms from PVSS UA Server
[DATAHUB-1558] – OPC UA A&C reports an error and fails to retrieve conditions from a misbehaved server
[DATAHUB-1559] – OPC UA A&C incorrectly sets the “Ack Required” flag in some circumstances
[DATAHUB-1565] – OPC UA window update timer exceeds thread limit and crashes DataHub
[DATAHUB-1566] – REST historian connection does not have an option for all points, or one at a time
[DATAHUB-1568] – Calls to the security database sometimes fail with “database is locked” messages
[DATAHUB-1569] – Historian connections do not throw away old values when the buffer limit is exceeded
[DATAHUB-1570] – Remote Config does not properly display the forwarding strategy dialog
[DATAHUB-1572] – OPC UA client creates branch data points for non-existent nodes in some cases
[DATAHUB-1573] – Possible OPC UA server crash when two clients subscribe to the same nodes at exactly the same time
[DATAHUB-1575] – Remote Config cannot create an MQTT client connection without advanced parser configured
[DATAHUB-1577] – MQTT advanced parser throws an error when given invalid JSON schema
[DATAHUB-1578] – Remote Config crashes if given invalid CSV field data
[DATAHUB-1579] – Web server tab does not appear in Remote Config if web server is not licensed.
[DATAHUB-1581] – Remote Config does not show newly created groups in the OPC UA advanced domain settings
[DATAHUB-1582] – Remote Config does not see all ODBC DSNs
[DATAHUB-1584] – Remote Config crashes if given CSV data containing a comma
[DATAHUB-1586] – MQTT broker uses the wrong point name with Sparkplug B when slash/dot conversion is disabled
[DATAHUB-1587] – Remote Config data viewer input treats strings as numbers incorrectly
[DATAHUB-1588] – Remote Config opens the 64-bit DSN editor, even for 32-bit DataHub
[DATAHUB-1589] – OPC DA client does not subscribe for shutdown advise from the server
[DATAHUB-1590] – OPC A&E crashes when a server sends the wrong number of attributes
[DATAHUB-1593] – Error messages sometimes produce “Message too long” message
[DATAHUB-1595] – Do not serve an index page if an HTTP folder request does not end in a slash
[DATAHUB-1596] – Fix issues with client-side certificates for outbound MQTT connections
[DATAHUB-1597] – CSV import crashes RC if the system has .NET Framework 4.6.2 and earlier installed
[DATAHUB-1598] – DataHub MQTT does not accept the Azure server certificate
[DATAHUB-1599] – MQTT Broker thread crashes with an out of range index error
[DATAHUB-1600] – OPC UA server does not handle point values of DbNull
[DATAHUB-1601] – Breaking Change: MQTT connection over SSL does not validate the server certificate
[DATAHUB-1603] – InfluxDB does not handle NaN and Infinity values
[DATAHUB-1604] – MQTT message format is invalid JSON if value is NaN or Infinity
[DATAHUB-1606] – NAN values not tunneled, not visible in Remote Config, not writable in Gamma
[DATAHUB-1607] – MQTT CA Root certificate configuration should not be required
[DATAHUB-1609] – Notifiers like email can block while sending, delaying other processing
[DATAHUB-1610] – OPC UA server does not send updates when only timestamp changes, even if forced in DataHub
[DATAHUB-1611] – MQTT broker sends data to the wrong client when using array JSON format
[DATAHUB-1612] – MQTT client cannot connect to Amazon IoT Core
[DATAHUB-1614] – OPC A&E Details do not include the Message field
[DATAHUB-1617] – ODBC query does not preserve milliseconds in timestamps
[DATAHUB-1618] – OPC A&C does not transmit recurring events on the same source
[DATAHUB-1619] – OPC UA client sometimes fails to connect over HTTPS on startup
[DATAHUB-1620] – DataHub crashes when disabling an MQTT client connection that has terminated due to lack of license
[DATAHUB-1621] – Installer does not install all DLLs for Remote Config with .NET 7 or earlier
[DATAHUB-1623] – Crash when MQTT client ID is set to an empty string
[DATAHUB-1624] – Sparkplug B uses the wrong data type for R4 values
[DATAHUB-1626] – OPC UA server fails to transmit some conditions with specific start-up order
[DATAHUB-1632] – Cannot assign a passworded PFX certificate to OPC UA using Remote Config
[DATAHUB-1634] – Gamma datahub_command for get_client_stats can crash DataHub
[DATAHUB-1635] – get_client_stats command does not filter by label for some plugin threads
[DATAHUB-1636] – OPC UA client connection may not start after changing its label
[DATAHUB-1638] – “Edit Port” and “Copy Endpoint to Clipboard” buttons in OPC UA (Remote Config) remain enabled when no protocol is selected
[DATAHUB-1639] – OPC UA A&C conditions update only once after connecting with certain start-up sequences
[DATAHUB-1643] – Remote Config displays the wrong point name when presented with an ambiguous data model
[DATAHUB-1649] – Tunneling between computers in different locales sets floats in arrays to zero
DataHub Improvements:
[DATAHUB-1472] – Add an option to historians to rewrite point names before storing them in the historian
[DATAHUB-1531] – Improve the accuracy of the External Historian snapshot timer
[DATAHUB-1536] – Make it clearer to the user that Skkynet DataHub installs with InfluxDB V1
[DATAHUB-1554] – Add Content-Encoding directives to the web server when serving a file
[DATAHUB-1567] – Add a mechanism in external historian to write when only the timestamp changes
[DATAHUB-1571] – Web server: Do not add raw POST data to the query arguments for non-form POST operations
[DATAHUB-1583] – Report OPC A&C shelving state and suppressed state as OPC A&E attributes
[DATAHUB-1585] – Improve MQTT error reporting when a connection is refused
[DATAHUB-1591] – Allow blank fields when importing Modbus configuration from CSV
[DATAHUB-1594] – Add support for ECDSA client certificates in MQTT client connections
[DATAHUB-1616] – /regservice option should set the service to automatically restart on failure
[DATAHUB-1628] – Improvement To MQTT Advanced Parser UI
[DATAHUB-1629] – MQTT Broker crashes when acting as Sparkplug B smart Broker, with certain Sparkplug B configuration.
[DATAHUB-1637] – Update OpenSSL to revision 1.1.1o
[DATAHUB-1642] – Change OPC UA A&C client to retrieve all event types, including custom types
[DATAHUB-1648] – Add an option in UA to convert property children of non-value nodes into values instead of properties
WebView Bugs Fixed:
[WVNET-449] – WebView cannot log in to an HTTPS server with an invalid certificate
[WVNET-451] – Alarm control does not clear stale information when the connection is lost
[WVNET-452] – Various WebView commands require DesignMode permission…and should not
[WVNET-453] – ControlToolbar is visible in when starting in KioskView
[WVNET-454] – Changing the input on a symbol also changes other unrelated symbols
[WVNET-456] – High/Low and Rising/Falling indicators have no icon in the toolbar
[WVNET-457] – PointDataTable is very slow to populate
[WVNET-460] – Problems with the symbol control
[WVNET-473] – Filtered data table cannot display some data types
[WVNET-475] – Add Reset UI and Restart
[WVNET-476] – Copying a symbol throws an exception in some circumstances
[WVNET-477] – Copying a symbol does not copy the selected visual symbol
[WVNET-478] – Animation Options demo page throws an error

DataHub Bugs Fixed
[DATAHUB-1551] – Exception converting native point to .NET point
[DATAHUB-1552] – Error while starting historian log for point
[DATAHUB-1553] – DataHub garbles incoming WebSocket data if the sender uses continuation frames
[DATAHUB-1565] – OPC UA window update timer exceeds thread limit and crashes DataHub
[DATAHUB-1572] – OPC UA client creates branch data points for non-existent nodes in some cases
[DATAHUB-1573] – Possible OPC UA server crash when two clients subscribe to the same nodes at exactly the same time
[DATAHUB-1582] – Remote Config does not see all ODBC DSNs
[DATAHUB-1590] – OPC A&E crashes when a server sends the wrong number of attributes
[DATAHUB-1600] – OPC UA server does not handle point values of DbNull
[DATAHUB-1606] – NAN values not tunneled, not visible in Remote Config, not writable in Gamma
[DATAHUB-1610] – OPC UA server does not send updates when only timestamp changes, even if forced in DataHub
[DATAHUB-1617] – ODBC query does not preserve milliseconds in timestamps
[DATAHUB-1649] – Tunneling between computers in different locales sets floats in arrays to zero
DataHub Improvements
[DATAHUB-1637] – Update OpenSSL to revision 1.1.1o
WebView Bugs Fixed
[WVNET-451] – Alarm control does not clear stale information when the connection is lost
[WVNET-473] – Filtered data table cannot display some data types

New in DataHub v10.0.0

  • External Historian Support
    In addition to the built-in historian, DataHub can now store time series data to InfluxDB V1, InfluxDB V2, Influx Cloud, AVEVA Historian, AVEVA Insight, OSIsoft PI, REST servers and Amazon Kinesis. Where applicable, these historians can be used for data visualization in QuickTrend and WebView, and for retrieval via OPC UA Historical Data Access.
  • Store-and-Forward for Historical Data, MQTT and Amazon Kinesis
    Time series data can be stored in InfluxDB and then forwarded to MQTT, Amazon Kinesis, or another historian through DataHub tunnelling. This ensures that data is transmitted even in the event of a network failure.
  • Tunnelling Support for Historical Data
    DataHub tunnelling can now act as a transmission path for historical data. This allows you to synchronize data from a protected operations network to a central historian without opening any incoming firewall ports in either the operations or IT networks. Neither network is exposed to external attack due to DataHub’s unique multi-hop historical data transmission technology, allowing historical data to reliably traverse a DMZ.
  • Installation of InfluxDB V1, Chronograf and Grafana
    The DataHub installer includes a copy of InfluxDB community edition, Chronograf and Grafana, along with a user interface that allows you to quickly configure and launch each of these applications. You can use the versions shipped in the DataHub installer, or connect to your own installation of InfluxDB locally, on your network, or in the cloud.
  • OPC UA Alarms and Conditions
    DataHub now supports OPC UA A&C (Alarms and Conditions) client and server interfaces, and converts between OPC UA A&C and OPC Classic A&E. This includes support for alarm acknowledgement, alarm source aggregation, tunnelling and redundancy.
  • Alarm Generation
    DataHub now implements sophisticated alarm generation. Specify different types of alarms, like multi-state, stateless and simple processing. This includes the ability to generate OPC A&E and OPC A&C alarms from real-time data, including state lifecycle and acknowledgement. The alarm generation system uses scripted conditions and actions to enable a wide variety of tests, such as multi-tag mathematics and sliding window statistical analysis (like variance, average and slope). Alarms can be specified as patterns to match all similar devices in a system with a single configuration, allowing you to configure alarms for all your similar devices with a single configuration.
  • Notification of Alarms via SMS, Email and Social Media
    The new notification system allows you to change data values, send email, call a web hook, or send any notification (SMS, WhatsApp, Line, etc.) supported by Twilio in response to an alarm. This includes both alarms generated by the DataHub alarm generator and alarms generated externally by OPC A&E or A&C servers.
  • MQTT Speed and Scaling
    DataHub version 10 replaces the MQTT client and server implementation with Mosquitto, a trusted high-speed MQTT library with excellent protocol support. This allows the DataHub broker to simultaneously handle up to 5000 connections, with much lower CPU requirements than the version 9 implementation.
  • Sparkplug B for MQTT
    DataHub’s MQTT implementation now supports Sparkplug B. This is a protocol layered on top of MQTT intended to provide plug-and-play interoperability among MQTT clients. DataHub’s broker not only supports Sparkplug B, but also adds capability to work around some limitations of Sparkplug B to help ensure that data representations are up to date and accurate under any network conditions. DataHub MQTT client connections can act as Sparkplug B primary applications, non-primary applications or edge-of-network devices. This allows you to easily convert any supported protocol to and from Sparkplug B.
  • Multiple JSON Format Support for MQTT
    Most MQTT devices produce JSON messages, but with different JSON packet definitions. DataHub version 10 introduces support for any number of distinct JSON packet definitions using “JSON Schemas”. This allows you to define the kind of messages each type of device will generate, and DataHub will automatically determine which schema a message belongs to. For each message schema you can define custom parsing and processing steps to extract data from any JSON message of any complexity. You can also define how to format a message to write back to the device, even if the device expects messages in a format different from its output schema.
  • CSV Import for Data Point Configuration
    Several DataHub features can now be partially configured through CSV files. This is particularly helpful when configuring a large number of OPC items for a connection. Features supporting CSV import include: OPC UA client, OPC DA client, Bridging, MQTT client, Modbus and Historian.
  • WebView Undo/Redo and File Browser
    Desktop WebView includes a number of enhancements, including Undo/Redo support for most editing operations. In addition, WebView now includes a browser-based file browser that allows you to upload, arrange, modify and delete your WebView pages and assets on the DataHub server.

DataHub Bugs Fixed
[DATAHUB-1399] – OPC UA client connection produces unnecessary certificate message
[DATAHUB-1400] – Disabling an OPC UA connection during initialization does not always disable immediately
[DATAHUB-1401] – Crash when connecting to a misbehaved UA server
[DATAHUB-1413] – Crash when an OPC server returns a NULL error message
[DATAHUB-1417] – Some event log messages may be garbled
[DATAHUB-1421] – Remote Config data viewer shows the wrong hierarchy for some data models
[DATAHUB-1422] – DataHub crashes if it receives an invalid binary message from a version 8 instance
[DATAHUB-1427] – Remote Config cannot display quality when a limit flag is set
[DATAHUB-1430] – OPC UA server produces wrong data quality when quality limit flags are set
[DATAHUB-1445] – Crash when transmitting the script log to Remote Config
[DATAHUB-1448] – OdbcToXml fails for email in remote config if logging is not licensed
[DATAHUB-1449] – The Scripting “New…” button does not produce a script if no template is selected.
[DATAHUB-1450] – DataHub crash when an A&E server crashes while DataHub is reading its source information
[DATAHUB-1464] – OPC UA server rejects a write to a point of type Any(bool)
[DATAHUB-1469] – MQTT connections are not stopped if removed while running
[DATAHUB-1476] – Change error message in Event log when running in demo mode
[DATAHUB-1482] – DataHub crashes when a DDE POKE occurs on a non-existent data domain
[DATAHUB-1494] – OPC UA event subscription for certificate audit events causes other client connections to fail
[DATAHUB-1499] – OPC UA connection fails if manually selected nodes contain multiple definitions for the same point
[DATAHUB-1513] – Gamma scripts cannot set array points to an empty array
[DATAHUB-1514] – OPC DA client connections produce unnecessary error messages when connecting for the second time
[DATAHUB-1516] – OPC UA server says “Not my node”
[DATAHUB-1544] – OPC DA client crashes if the server responds with access denied for an asynchronous write
DataHub Improvements
[DATAHUB-1486] – Editing a script opens an existing editor if one exists
[DATAHUB-1498] – Change Service Manager to disable “allow service to interact with desktop” by default
[DATAHUB-1524] – Change the minimum height of the MQTT Client dialog to fix within a 1366×768 window
[DATAHUB-1525] – Update wget to a more recent version that supports TLS 1.2 and 1.3
WebView Bugs Fixed
[WVNET-347] – High/Low control does not change color when you change the color property
[WVNET-414] – WebView shows an exception dialog when a point is non-numeric
[WVNET-446] – Hyperlink button does not work if an argument is set

DataHub Bugs Fixed
[DATAHUB-1378] – Adding a license key via Remote Config deletes other license keys
[DATAHUB-1380] – DataHub acting as an OPC UA client cannot reconnect after disconnecting
[DATAHUB-1381] – Requesting a special file hangs the web server
[DATAHUB-1382] – Remote Config creates manual OPC UA items as properties instead of attributes
[DATAHUB-1383] – Remote config does not show the correct type for points at the root of a domain
[DATAHUB-1387] – MQTT points fail when an OPC UA server sends an invalid timestamp
DataHub Improvements
[DATAHUB-1384] – Optimize OPC UA server performance under heavy load

DataHub Bugs Fixed
[DATAHUB-1308] – The Web Application Manager fails if the WEB license is not installed
[DATAHUB-1309] – Failed write on OPC item containing a % sign causes a crash
[DATAHUB-1311] – Remote config problems with OPC UA advanced configuration
[DATAHUB-1312] – Crash in Remote Config when changing MQTT client from push to pull
[DATAHUB-1313] – Data Viewer displays garbage for an invalid timestamp in the distant future
[DATAHUB-1314] – Remote Config sets a redundancy setting to indeterminate, causing a failure when pressing Apply
[DATAHUB-1316] – OPC DA client crash during browse when the server sends a continuation point
[DATAHUB-1319] – If you do not enable the About module for Remote Config then RC will crash
[DATAHUB-1322] – OPCItemLoader.g does not reliably apply its configuration changes
[DATAHUB-1323] – Point names with consecutive spaces are not correctly transmitted through tunnels
[DATAHUB-1324] – OPC A&E produces the wrong condition description text in detail mode
[DATAHUB-1325] – DataHub OPC server does not correctly set pbMoreElements
[DATAHUB-1326] – DataHub crash when tunnel socket fills
[DATAHUB-1327] – OPC UA plugin might fail on start-up
[DATAHUB-1331] – Remote Config creates ODBC actions with bad triggers
[DATAHUB-1332] – OPC UA manual selection TreeView control fails with large point counts in Remote Config
[DATAHUB-1333] – Remote Config OPC UA manual selection cannot browse branches with huge number of children
[DATAHUB-1335] – Web server does not wait for flush when closing a socket, causes WebView to hang initializing
[DATAHUB-1336] – If source of a bridge is read-only the destination is forced to read-only
[DATAHUB-1339] – Remote Config cannot configure database writes for points containing [ ] characters
[DATAHUB-1341] – Force OPC UA certificate path to be in the configuration folder. This is a potentially breaking change if you have moved your configuration to a different location. It will cause DataHub to generate a new server certificate and invalidate previous certificate validations.
[DATAHUB-1347] – The suggested label on a new OPC DA client connection is not unique
[DATAHUB-1348] – DataHub crash after configuring manual DA points through Remote Config
[DATAHUB-1349] – OPC UA treats manual nodes differently depending on specification order
[DATAHUB-1354] – Add a label property to tunnel connections
[DATAHUB-1355] – Do not create multiple backup folders when upgrading versions.
[DATAHUB-1356] – Installer uses the defaults folder instead of the WebServer/html folder for the Remote Config start menu link
[DATAHUB-1357] – Remote Config About information does not update when changing servers
[DATAHUB-1358] – MQTT client sometimes takes a long time to recover after connection failure
[DATAHUB-1359] – Google IoT Reconfigure button does not set the prefix segment properly
[DATAHUB-1360] – Do not remove leading / character from MQTT subscriptions
[DATAHUB-1362] – OPC UA client connection does not write a point to the server if the initial value in the client is invalid
[DATAHUB-1372] – ODBC does not support SQL Server SmallDatetime data type
[DATAHUB-1373] – Change the wording and interface on the WebView tab
[DATAHUB-1374] – Variant type VT_INT can produce negative numbers when they should be positive
DataHub Improvements
[DATAHUB-1301] – Improve MQTT Broker error message when port conflict is detected at start-up
[DATAHUB-1317] – Add a point name filter to the data browser
[DATAHUB-1320] – Add an option to Remote Config to set the HTTP timeout
[DATAHUB-1334] – Improve Remote Config network speed and maximum message size
[DATAHUB-1344] – Change Gamma timers to use highest resolution clock available from the O/S
[DATAHUB-1345] – Accept entire SAS token when authenticating Azure IoT MQTT connections
[DATAHUB-1346] – Accept out-of-order endpoint lists from OPC UA servers
[DATAHUB-1350] – Add registry entries to configure SSL ciphers and options
[DATAHUB-1351] – Upgrade to OpenSSL version 1.1.1
WebView Bugs Fixed
[WVNET-352] – In Run Mode, background is not fully frozen when loading a new page
[WVNET-354] – V9 does not support target query (via wvQuery.Run)
[WVNET-356] – Refactor DHDataPager to remove static CurrentPager
[WVNET-361] – DHEntryField Input Validation Border is visible when control is not
[WVNET-362] – Resizing the control icons generates an error
[WVNET-364] – Watermark text does not have same properties as entry text
[WVNET-365] – Maximum value field in input validation causes unexpected write
[WVNET-367] – Point change notification does not fire when Quality changes
[WVNET-369] – Tooltips are not displayed on SeriesChart data points.
[DATAHUB-1363] – Silverlight WebView throws errors when you save a page from another WebView
[WVNET-371] – WebView loads data from all domains, not just the configured domains
[WVNET-373] – WebView shows an error when changing the data source in a filtered data table
WebView Improvements
[WVNET-359] – In S#, expose DataPoint as property of PageElementParameter
[WVNET-370] – Compile WebView for 64-bit with the x64 version of DataHub

DataHub Bugs Fixed
[DATAHUB-1251] – Slow memory leak in web server causing crash after days running Remote Config
[DATAHUB-1252] – Cannot browse an OPC DA server using Remote Config
[DATAHUB-1253] – Remote Config causes OPC DA to create multiple connections
[DATAHUB-1254] – Remote Config deletes manual OPC DA items when you change the connection label
[DATAHUB-1255] – OPC DA points are written to the default domain if the target domain does not exist and cannot be created
[DATAHUB-1256] – OPC DA creates hierarchy in the wrong domain if both domain and manual items change at the same time
[DATAHUB-1257] – Remote Config does not edit the OPC DA configuration every 2nd attempt
[DATAHUB-1260] – Remote Config does not allow key fields in ODBC row update mode
[DATAHUB-1261] – Potential crash when configuring ODBC database connection
[DATAHUB-1262] – Remote config crash when config DA manual points
[DATAHUB-1264] – Remote Config does not preserve user name in OPC UA connection configuration
[DATAHUB-1265] – Crash when configuring bridging if data domain cannot be created
[DATAHUB-1266] – Changing email configuration does not apply until DataHub is restarted
[DATAHUB-1267] – OPC UA server can stop accepting requests with BadTooManyOperations error
[DATAHUB-1268] – MQTT broker allows plain-text connections if both plain and SSL are disabled.
[DATAHUB-1269] – Long delay when getting initial data set from a tunnel or to WebView
[DATAHUB-1270] – Cannot log in to WebView as admin/admin with a fresh configuration
[DATAHUB-1276] – Typing the host name in Remote Config is very slow
[DATAHUB-1278] – Commands with lists as arguments cause errors parsing subsequent commands
[DATAHUB-1279] – Parsing error when tunnelling using binary mode
[DATAHUB-1280] – Error in Remote Config when making a connection test for OPC UA client
[DATAHUB-1281] – Overloaded A&E client can cause DataHub to consume all memory
[DATAHUB-1282] – Memory leak in OPC A&E when reconfiguring A&E connections
[DATAHUB-1284] – Cannot delete a license key when the license file contains non-license lines
[DATAHUB-1285] – OPC UA read timeout is too short (1 minute)
[DATAHUB-1286] – Crash when loading A&E condition from some servers
[DATAHUB-1291] – Remote Config not showing all features when connected
[DATAHUB-1298] – OPC UA generates an error dialog during startup due to thread timing
DataHub Improvements
[DATAHUB-1258] – Add millisecond accuracy to MQTT ISO timestamp
[DATAHUB-1271] – Allow the MQTT broker to accept both PEM and PFX certificates
[DATAHUB-1274] – Remove -admin command line switch from DataHub
[DATAHUB-1283] – Add a tunneller binary mode that will work across 32-bit and 64-bit versions
[DATAHUB-1287] – Change the default Remote Config data port to use a WebSocket
[DATAHUB-1290] – Add a point name filter to the data browser in Remote Config
[DATAHUB-1297] – Raise the OPC UA keepalive timeout from 5 seconds to 30 seconds
WebView Bugs
[WVNET-237] – Startup fails when startpage is defined and DLLs need to be authorized
[WVNET-343] – Remote Desktop WebView hangs at “Initializing application…”
[WVNET-345] – Entry fields for text properties in Desktop WebView are grey
[WVNET-346] – High/Low control shows wrong color when fill colors are disabled
[WVNET-349] – Dynamically changing bindings on a page is very slow
[DATAHUB-1294] – WebView crash when asking to display point local time
[DATAHUB-1295] – WebView scripting is missing Regex capability
[DATAHUB-1296] – WebView cannot open an HTTP page from a Hyperlink control using a relative URI

DataHub Bugs Fixed
[DATAHUB-1134] – Remote Config script manager will not display a list with only one script
[DATAHUB-1140] – Remote Config Modbus UI is setting the wrong point types and resetting offsets
[DATAHUB-1168] – Possible memory leak when OPC UA clients constantly reconnect
[DATAHUB-1176] – Crash when destroying an ODBC connection with a pending error condition.
[DATAHUB-1178] – Remote config accepts admin/admin credentials
[DATAHUB-1179] – Installer does not copy branding to the default branding folder
[DATAHUB-1180] – Remote config cannot edit the historian point list
[DATAHUB-1185] – Remote config crash when starting an import from a file that no longer exists
[DATAHUB-1204] – Out of memory error when using MQTT client
[DATAHUB-1205] – OPC UA dynamically created nodes are created as read-only
[DATAHUB-1211] – A zero periodic timer blocks the script thread
[DATAHUB-1214] – Crash when configuring OPC DA client connection
[DATAHUB-1216] – WebView index.html references jQuery on jquery.com, not on the local system
[DATAHUB-1221] – Unhandled exception configuring UA data domains
[DATAHUB-1223] – Gamma parser uses locale settings when reading floats from a file
[DATAHUB-1225] – Crash when configuring OPC DA via remote configuration
[DATAHUB-1227] – Service manager does not save the global install path for 32-bit DataHub
[DATAHUB-1228] – MQTT client fails to connect when user name or password contains braces
[DATAHUB-1239] – OPC UA domain permission configuration fails with similarly named domains
[DATAHUB-1247] – Remote Config writes data with the wrong timestamp
[DATAHUB-1248] – Remote Config does not browse OPC DA servers from a remote server
DataHub Improvements
[DATAHUB-1169] – Add a registry entry, OpcUaMaxBrowseNodes, to change the OPC UA automatic browse node limit
[DATAHUB-1170] – Disable HTTP get for WSDL document by default in the OPC UA server
[DATAHUB-1174] – Send license information before data synchronization to handle very slow networks
[DATAHUB-1177] – Add support for non-hierarchical points in ModelSupport.g
[DATAHUB-1193] – Change the TCP authentication timeout from 5 seconds to 30 seconds
[DATAHUB-1208] – OPC Core Components might restart the computer
[DATAHUB-1218] – Improve tunnel stability on extremely slow networks
[DATAHUB-1224] – Allow the OPC DA server to accept items from clients that do not exist
[DATAHUB-1229] – Add a keepalive setting to the MQTT client configuration
[DATAHUB-1236] – Add an option to save the password in Remote Config
WebView Bugs Fixed
[WVNET-61] – Filtered data table properties not all working
[WVNET-248] – Manually placing a Control does not include drag image
[WVNET-313] – Toggle button loads with wrong starting value
[WVNET-319] – WebView and hosting DataHub server are not compatible
[WVNET-321] – Control is not positioned correctly when placing via drag
[WVNET-322] – HyperlinkButton should use Cursor=”Hand”
[WVNET-323] – Historical data does not always get displayed in Trend Chart
[WVNET-326] – Esc does not dismiss dialog
[WEBVIEW-866] – Remove the New Mobile Page menu item

DataHub Bug Fixes
[DATAHUB-1103] – OPC Connection fails if security manager is not yet ready
[DATAHUB-1140] – Remote Config Modbus UI is setting the wrong point types and resetting offsets
[DATAHUB-1141] – Remote config point lists for ODBC and Mail become empty when switching tabs
[DATAHUB-1142] – SSL connection might hang forever during connection attempt in a bad network
[DATAHUB-1145] – Security not ready when a DA client auto-starts DataHub
[DATAHUB-1146] – Exception in event log when starting some plugins
[DATAHUB-1149] – Model creation is slow with large numbers of subassemblies
[DATAHUB-1150] – OPC-UA manual node selection uses too much CPU with huge branch counts
[DATAHUB-1153] – MailSend sometimes crashes or fails to deliver email in 64-bit builds.
[DATAHUB-1154] – Modbus plugin fails to read points in overlapping ranges
[DATAHUB-1156] – 32-bit DataHub does not respect the global configuration folder registry entry
[DATAHUB-1160] – Tree view does not scroll properly when editing UA manual nodes
[DATAHUB-1162] – Rare race condition where an exiting tunnel causes a crash
DataHub Improvements
[DATAHUB-1151] – Speed up the hierarchy tree display in the data viewer
[DATAHUB-1155] – Change Remote Config to sort OPC DA points in manual item selection
WebView Bug Fixes
[WVNET-279] – Controls are not created at the top of the Z-order
[WVNET-306] – CultureInfo is missing in S-Sharp scripting
[WVNET-307] – TimePicker does not support Popup Minutes Inverval

Improvement
[DATAHUB-1128] – Change redundancy switching to only mark outputs as not connected if they are fed by current inputs
[DATAHUB-1130] – Improve quality for redundancy output when inputs have different data sets
Bug
[DATAHUB-1092] – Core installer does not install WebSocket scripts
[DATAHUB-1123] – Connection permissions are not always applied correctly
[DATAHUB-1125] – Crash when storing during ODBC store-and-forward
[DATAHUB-1126] – Crash when a point has type Empty Array
[DATAHUB-1127] – MQTT broker does not always set disconnected client points to not connected
[OPCUA-275] – Per-domain permissions do not respect the All Domains setting
[WEBVIEW-865] – WebView does not respect the “Disable data writes from client” setting
[DATAHUB-1124] – Telerik gauge DLLs for Silverlight are not installed in V9.0.4
[WVNET-262] – High-Low indicator has wrong color on first load

DataHub Bugs Fixed:
[DATAHUB-1012] – Remote config does not always use new connection settings after changing them
[DATAHUB-1079] – Service manager does not generate good error messages in some cases
[DATAHUB-1082] – Remote configuration does not show or edit the “binary mode” setting in tunnel configuration
[DATAHUB-1083] – Potential crash when loading bridge configuration
[DATAHUB-1089] – Specific security configuration causes all TCP connections to fail
[DATAHUB-1091] – Spurious “point does not exist” message when connecting a tunnel
[DATAHUB-1093] – Crash due to thread race when OPC A&E writes to the log
[DATAHUB-1097] – Remote Config cannot view Database configuration if Email is not enabled
[DATAHUB-1099] – Remote Config logging interface radio buttons not working reliably
[DATAHUB-1100] – Remote Config ODBC configuration cannot connect with an explicit user name and password
[DATAHUB-1102] – Script files do not run when the path contains Japanese characters
[DATAHUB-1105] – MQTT broker does not handle # correctly
[DATAHUB-1106] – OPC DA crash when a client disconnects in an improbable sequence
[DATAHUB-1107] – MQTT broker rewrites properties as attributes, then causes duplicate points
[DATAHUB-1111] – OPC UA sometimes looks for its configuration in the wrong folder
[DATAHUB-1113] – Memory leak in Gamma when opening and closing ODBC threads
[DATAHUB-1121] – Incoming SSL data gets delayed until new data if available
[DATAHUB-1122] – Installing 32-bit V9 over 64-bit V9 gets some file paths wrong
[WEBVIEW-861] – WebView shows an unauthorized data error when binding to a dynamic global
[WEBVIEW-863] – Loading a non-existent page might load a different page
[WVNET-250] – Selecting a row in filtered data table throws an error.
[WVNET-251] – Desktop WebView creates DataHub points for dynamic globals when it references them
[OPCUA-272] – OPC-UA server throws an error for a null UserIdentityToken
[OPCUA-273] – Do not create OPC-UA certificates with spaces in the Application Name and URI fields
Improvements:
[DATAHUB-1067] – Add MQTT broker limit defaults for Amazon AWS
[DATAHUB-1069] – Add ability to send MQTT messages in batches
[DATAHUB-1085] – Improve the error messages from Remote Config when a connection fails
[OPCUA-271] – Attempt to connect to a UA server that returns invalid endpoint URLs

DataHub Bugs Fixed:
[DATAHUB-1019] – Remove message: Incoming message from server is not allowed: using_license
[DATAHUB-1021] – List of pages for WebView “Load page at startup” is not populated
[DATAHUB-1022] – Branding folders for WebView “Use a custom branding directory” not populated
[DATAHUB-1025] – ODBC statistics menus are not created in the system tray menu
[DATAHUB-1026] – Remote Config shows all installed items, not just the ones that are licensed
[DATAHUB-1027] – Remote Config requires you to select About and Licensing in order to display the other features
[DATAHUB-1028] – MQTT sends floating point values in locale-specific format
[DATAHUB-1031] – MQTT {point} placeholder does not work in all cases
[DATAHUB-1032] – MQTT client and broker can swap values for a point when it changes in the broker
[DATAHUB-1033] – MQTT does not stop broker threads when it is disabled
[DATAHUB-1034] – Point transmission queues become too long on a slow connection
[DATAHUB-1037] – DataHub does not find custom WebView branding in the correct folder
[DATAHUB-1044] – DataHub crashes if a configuration file is corrupted
[DATAHUB-1046] – DataHub crashes while installing as a service when the configuration folder is invalid
[DATAHUB-1047] – DataHub does not always respect the global configuration path in the registry
[DATAHUB-1049] – Tunnel sometimes sends stale data after a disconnect and reconnect
[DATAHUB-1054] – DSN selection list in Remote Config shows both 32-bit and 64-bit DSNs
[DATAHUB-1055] – Potential crash when destroying a thread when CPU is overloaded
[DATAHUB-1057] – DataHub UA server cannot register HTTP endpoints and LDS certificate on non-English systems
[DATAHUB-1061] – Redundancy in Remote Config sometimes gets the input domains wrong when opening the edit dialog
[DATAHUB-1065] – Remote Config crashes in Windows 7 if you try to connect using WebSockets
[DATAHUB-1070] – Web Application Download Manager fails on an untrusted HTTPS connections
[DATAHUB-1071] – Web server ASP pages do not accept <@ @> syntax
[DATAHUB-1074] – Remote Configuration crash when clicking MQTT Broker Limits button
[DATAHUB-1075] – MQTT broker does not notice a failed connection with some network failures
[DATAHUB-1076] – Read-write state is not always preserved through a redundancy pair
[DATAHUB-1077] – OPC A&E Ack points do not reliably preserve read/writes status through a redunancy pair
[OPCUA-263] – Connecting large numbers of manually selected items is very slow
[OPCUA-265] – When a server rejects a write, DataHub becomes out of sync with the server
[OPCUA-266] – Asynchronous writes repeat previous write operations
WebView Bugs Fixed:
[WEBVIEW-217] – Group content sizing is a problem when a page loads with controls that no longer exist
[WEBVIEW-626] – Save As with colon (:) in filename causes a problem
[WEBVIEW-660] – Page selection tab is very slow with large numbers of pages
[WEBVIEW-690] – Point Data Table throws Null Reference exception when user enters filter criteria
[WEBVIEW-739] – Circular Gauge 2 not showing image in some cases
[WVNET-103] – Menuitem images have incorrect size and resolution on some systems
[WVNET-104] – Desktop WebView does not process the initialization settings from the DataHub “WebView” tab
[WVNET-106] – Desktop WebView does not properly handle the start page command-line option
[WVNET-115] – Failing to load an image on a page causes some pages to fail to load
[WVNET-210] – PopupDialogs do not appear in front of the WebView app
[WVNET-214] – Unable to set HyperlinkButton properties
[WVNET-220] – Service image is not sized correctly in connection status tooltip
[WVNET-221] – Dialogs should respond to Enter and Esc
[WVNET-222] – Dynamic visibility of menuitem separators is not working
[WVNET-223] – Fix login dialog to better handle Use WebSocket
[WVNET-225] – Application crashes when trying to copy and paste a group.
[WVNET-226] – Dialogs do not properly handle content resizing
[WVNET-230] – WebView does not preserve the last connection settings
DataHub Improvements:
[DATAHUB-1041] – Add a redundancy option to not write backward to read-only inputs
[DATAHUB-1045] – Change the event history buffer from 100 to 500 messages
[DATAHUB-1051] – MQTT connection to Amazon should accept the certificates that AWS provides
[DATAHUB-1020] – Default location for new scripts changed to the configuration folder
[DATAHUB-1062] – Add an option OPC A&E to suppress area paths in computed source names
[DATAHUB-1069] – Add ability to send MQTT messages in batches
[DATAHUB-1073] – Update OpenSSL to version 1.0.2r
WebView Improvements:
[WVNET-208] – Add MenuItems to clear security acceptance of ControlAssemblies
[WVNET-117] – Add support for StartPage and BrandingFolder set to ” ” (i.e., a space)
[WVNET-216] – Deprecate startup parameter names with embedded underscores
[WVNET-219] – Remove the Read Queue line from the Connection status tooltip
[WVNET-112] – Make tooltips available for disabled icons
[WVNET-228] – Add a way to copy the trace history to the clipboard
[WVNET-213] – Add new images for various status and dialog icons

DataHub Bugs Fixed:
[DATAHUB-1017] – TCP Link license upgrades are not counted correctly
DataHub Improvements:
[DATAHUB-1014] – MQTT now accepts {value} to indicate a non-JSON message payload
[DATAHUB-927] – WebView Configuration page indicates that the settings are only for Silverlight
WebView Improvements:
[WEBVIEW-840] – File upload menu item reflects differences between WebView platforms

DataHub Bugs Fixed:
[DATAHUB-981] – Password entry field in the security tab makes password visible.
[DATAHUB-991] – Remote Config does not always show the Web Server tab
[DATAHUB-996] – Remote Config gets into an error state when switching from WebSocket to TCP data port
[DATAHUB-1000] – Help button goes to a “page not found” message
[DATAHUB-1001] – Crash when manually deselecting OPC-DA points
[DATAHUB-1003] – The bridging configuration behaves differently in remote config
[DATAHUB-1004] – The Remote Config password field for Tunnel connections shows the password
[DATAHUB-1005] – The Remote Config data browser sometimes shows an incorrect hierarchy
[DATAHUB-1006] – Error message in the event log after run with some feature combinations
[DATAHUB-1007] – Crash when DataHub first runs with some feature combinations
DataHub Improvements:
[DATAHUB-997] – Have Web Server accept WebSocket connections even if not licensed when Remote Config is connection
[DATAHUB-999] – Make the installer require Tunnelling and Web Server if Remote Config is selected
[OPCUA-262] – Change the OPC UA server to use the OPC user for its security permissions (was using Anonymous)

DataHub Changes:
[] – DataHub v9 is now a 64-bit applicaton
[] – Added Desktop WebView (WPF) application
[] – Added Remote Config feature
[] – Added MQTT Client and Broker feature
[] – Support for IP cameras
DataHub Bugs Fixed:
[DATAHUB-839] – Default drag and drop style does not work with Excel 2016
[DATAHUB-851] – OPC-UA plugin tries to register with the LDS even if not licensed
[DATAHUB-855] – Redundancy will not work in pure copy mode without second domain specified
[DATAHUB-861] – Modbus cannot swap bytes for ASCII and UTF-8 strings
[DATAHUB-880] – DataHub WebSocket implementation does not send correct CLOSE message
[DATAHUB-885] – OPC A&E source name discovery sometimes produces a fully qualified name instead of a browse name
[DATAHUB-896] – OPC A&E generates wrong subcondition representation if server sends NULL instead of empty string
[DATAHUB-970] – OPC DA sends the string “null” as an IP address to AuthAuthentiateSessionHandler
[DATAHUB-986] – Outgoing DDE Client connection continues to try and fail even when disabled
[OPCUA-250] – OPC UA does not create non-existent nodes even if set to do so
[OPCUA-252] – Client connection cannot write to a node with a custom data type
[OPCUA-254] – OPC UA server does not handle indeterminate value rank types correctly
[OPCUA-257] – Add an option to UA client connections to change maximum message length
[OPCUA-258] – The node ID is not copied if “Copy names from selection” is checked on the Configure Nodes
[OPCUA-260] – OPC UA client disconnects if it cannot register all manual nodes
DataHub Improvements
[OPCUA-150] – We should support Basic256SHA256 encryption
[OPCUA-173] – Option to turn off registering with the LDS
[OPCUA-177] – Allow manual entry of item names for non-browsable items
[OPCUA-204] – Support OPC-UA cache read and device read
[OPCUA-255] – Add an option to OPC UA connections to ignore server state

WebView Bugs Fixed:
[WEBVIEW-839] – Filtered data table column headers do not update when getting new data
[WEBVIEW-843] – Regression – filtered table data does not update when new data arrives with the same column definitions

DataHub Bugs Fixed:
[DATAHUB-831] – Gamma string arrays sometimes cause a crash when written to a data point
[DATAHUB-833] – DataHub crashes when OPC connection is lost with data in-flight
[DATAHUB-837] – Very high tunnel traffic volume causes syntax error messages in the log
[DATAHUB-840] – OPC DA manual nodes attempt to advise on path elements, not just leaves
[DATAHUB-846] – DataHub crash when OPC event arrives after connection is terminated
DataHub Improvements
[DATAHUB-836] – OPC UA Tunneller license also activates OPC DA feature

DataHub Bugs Fixed:
[DATAHUB-760] – Modbus connections sometimes show the wrong running status
[DATAHUB-806] – Web Server does not respond to all requests in an HTTP pipeline
[DATAHUB-809] – Modbus connection status is incorrect in the connection viewer window
[DATAHUB-810] – Modbus plugin throws exception when invalid IP entered in config
[DATAHUB-813] – Modbus slows down and times out with many connections
[DATAHUB-814] – Tunnel incorrectly comingles point and command messages
[DATAHUB-815] – ODBC string result set may contain random characters
[DATAHUB-816] – ODBC string is truncated at 4095 characters
[DATAHUB-818] – ODBC configuration window does not restore properly from minimize
[DATAHUB-819] – Remove test in threaded ODBC for Oracle status code S1000
[DATAHUB-820] – Redundancy does not update after initialization if input domains are completely static
[DATAHUB-821] – Memory leak when tunneling float arrays containing NaN and Inf
[OPCUA-186] – DataHub UA server does not accept a blank server name
[OPCUA-190] – UA server does not respect domain permission settings
DataHub Improvements:
[DATAHUB-808] – Update OpenSSL to version 1.0.2k
[DATAHUB-812] – When making a tunnel connection, report the master’s version to the
slave event log, and the slave’s version in the master event log
[DATAHUB-822] – Allow OPC DA connections to accept a canonical type of VARIANT

DataHub Bugs Fixed:
[DATAHUB-798] – DataHub tray icon does not come back after Windows explorer.exe crashes
[DATAHUB-799] – Tunnel in demo mode crashes DataHub when denied due to license failure
[DATAHUB-801] – Web server falls back to HTTP if set to SSL but the certificate is not available
[DATAHUB-803] – Launch WebView button does not modify url to include SSL port number
[DATAHUB-804] – Launch WebView button should always run Internet Explorer, even if it is not the default browser
[OPCUA-179] – UA client treats Variant values as String instead of Any or Empty
[OPCUA-181] – Browse fails with many points as children of a single branch
WebView Bugs Fixed:
[WEBVIEW-822] – FilteredDataTable: Execute Now in OnSelectionChanged produces invalid specified cast error
[WEBVIEW-824] – WebView shows fr:text instead of English when run on French Windows
[WEBVIEW-826] – WebView does not load a page over SSL
[WEBVIEW-829] – Hiding dialogs also causes the “Loading…” message to be hidden
WebView Features Added:
[WEBVIEW-828] – Change dialog options to hide interactive and non-interactive dialogs separately
[WEBVIEW-807] – Change Silverlight installation detection to be browser-independent

DataHub Bug Fixed:
[DATAHUB-785] – OPC Server throws an error during connection in demo mode
WebView Bugs Fixed:
[WEBVIEW-810] – Fix a potential race when a page fails to save due to file system permissions
[WEBVIEW-811] – Remove spurious ‘No permission record …’ trace log warnings
[WEBVIEW-818] – Fix an issue where pinning or grouping a column in the Filtered Data Table sometime causes an error message to pop up.

DataHub Improvements:
[] – Add support for OPC UA client and server
[] – Add support for USB web cameras
[DATAHUB-587] – Add support for authenticating proxies and SSL proxies
[DATAHUB-744] – Add a tunnel option to always use HTTP CONNECT when connecting through a proxy
[DATAHUB-768] – Allow Gamma to accept arrays containing floating point NaN and Inf
WebView Improvements:
[WEBVIEW-698] – Enable shortcut keys to be handled in S#
[WEBVIEW-758] – Make WebView pages compatible between DataHub V8 and SkkyHub
[WEBVIEW-759] – Add PageProperty support for GETP and SETP and add View-related PageProperties
[WEBVIEW-760] – Expose SelectedItem and SelectedItems as properties of FilteredDataTable
[WEBVIEW-228] – Add configuration for text labels on slider control
[WEBVIEW-650] – Accommodate partial “page:” uri matching
[WEBVIEW-666] – Add support for fonts with names that include space characters
[WEBVIEW-671] – Create FormatString specifier for DHLabel that preserves number as text
[WEBVIEW-780] – Add property to CircularGauge2 control to allow the designer to disable pointer animation
[WEBVIEW-724] – Change POST to GET for many web operations
DataHub Bugs Fixed:
[DATAHUB-739] – OPC DA and UA configuration screens do not see computers from other workgroups
[DATAHUB-753] – Fatal error in plug-in when adding Modbus Point to MB server that does not exist
[DATAHUB-760] – Modbus connections sometimes show the wrong running status
[DATAHUB-764] – Modbus Plugin does not print error messages to the event log
[DATAHUB-766] – Historian settings do not handle locales where the decimal is a comma
[DATAHUB-767] – Cannot process arrays of floating point in Gamma when locale uses a comma for a decimal
[DATAHUB-770] – Modbus configuration does not allow you to change a connection name
[DATAHUB-771] – DataHub crashes when a script generates a log message longer than 1023 characters
[DATAHUB-774] – Exception while applying .NET plugin configuration: Object reference not set to an instance of an object.
[DATAHUB-775] – Script engine hangs on TimerAt when hour is outside the range 0-23
WebView Bugs Fixed:
[WEBVIEW-45] – File Operations – Save page does not show an error if saving fails
[WEBVIEW-663] – custom symbols – RotationSpeedRatio does not handle negative numbers
[WEBVIEW-664] – Symbol rotation – auto reverse does not take effect immediately
[WEBVIEW-665] – Symbol rotation should smoothly change as RPM dynamically changes
[WEBVIEW-667] – Run/Design Mode toolbar button is not always easy to find
[WEBVIEW-377] – Fix a memory leak caused by images
[WEBVIEW-644] – Script binding property field error when first line of script is empty
[WEBVIEW-692] – Fix “Unable to access Page object” when copying control with ScriptBinding
[WEBVIEW-694] – Timestamp on DataPoints generated from xml result (from ODBC) should use UTC time
[WEBVIEW-709] – Properties of controls within a group do not persist properly
[WEBVIEW-714] – Text Entry Field control causes Silverlight to crash when Vertical Scroll Bar Visibility = Auto and Vertical Alignment is not Stretch
[WEBVIEW-717] – Branding directory is ignored if organization is specified in the URL
[WEBVIEW-728] – If a page write fails due to directory permissions, no error message is displayed
[WEBVIEW-731] – ComboBox and ListBox are no longer supporting DisplayMember and SelectedValueMember properties
[WEBVIEW-750] – Arrange menu options (e.g., Send to Back) are available in Run Mode
[WEBVIEW-753] – ToggleButton property editor does not reset after click
[WEBVIEW-761] – Script binding expressions are not evaluated correctly when copying/duplicating controls
[WEBVIEW-768] – RMH_MissingResource emitting warning messages for PAGEPROPERTY_Description_Xxx
[WEBVIEW-779] – ComboBox resizes when Font and Alignment is changed
[WEBVIEW-781] – Circular Gauge 2 Optimal Range is not correct
[WEBVIEW-782] – Circular Gauge 2 Indicator Color not updated when AnimatePointer is false
[WEBVIEW-785] – Cannot get image list when file name contains ampersand character
[WEBVIEW-787] – Explorer ExpandAll/CollapseAll buttons stop working after switching Explorer Tabs
[WEBVIEW-792] – Value does not reset when a read-only user changes a data point value
[WEBVIEW-802] – Login does not allow second attempt after password incorrect on first attempt
[WEBVIEW-803] – Unable to login with an account with null password
Breaking Changes Between V7 and V8:
[] – If a program attempts to authenticate over a TCP connection then failure will cause the connection to immediately drop. In V7 a failure to authenticate resulted in the connection dropping back to anonymous permissions but remaining connected.
[] – WebView pages are not compatible between V7 and V8. You can load a V7 page in V8, but you cannot load a V8 page in V7.
[DATAHUB-748] – Do not send the data model when synchronizing a non-authoritative tunnel
Known Issues:
[DATAHUB-752] – Canonical types not synchronized over a tunnel under certain circumstances, particularly with OPC UA tunnelling

DataHub Bugs Fixed:
[DATAHUB-565] – Memory leak when opening and closing OPC DA and A&E connections
[DATAHUB-734] – Cannot create more than 64 wait handles (mostly threads)
[DATAHUB-736] – Tunnel connections sometimes incorrectly fail with “no license”
DataHub Improvements:
[DATAHUB-731] – DataHub negotiates the best mutually supported TLS level rather than requiring TLS 1.2

DataHub Bugs Fixed:
[DATAHUB-667] – Memory leak in A&E server when conditions change
[DATAHUB-716] – Cannot close Modbus Slave config window with blank host name field
[DATAHUB-724] – DDE connections to Excel do not update after the initial connection
[DATAHUB-728] – Outgoing DDE connection does not reconnect reliably after changing service or topic

DataHub Bugs Fixed:
[DATAHUB-625] – Querying an OPC connection containing filters through Gamma produces a string of strange characters.
[DATAHUB-634] – Some ODBC queries fail with logging turned on.
[DATAHUB-635] – Modbus connection may not re-establish after a network break or message failure.
[DATAHUB-644] – Gamma ODBC cannot synchronously map a fully-qualified table name.
[DATAHUB-651] – Canonical type change can cause infinite ringing in the network.
[DATAHUB-652] – Redundancy does not always propagate read-only status to the output domain.
[DATAHUB-667] – Memory leak in A&E server when conditions change.
[DATAHUB-673] – The installer does not restart the service after installation.
[DATAHUB-677] – License tracking gets confused in highly connected networks.
[DATAHUB-678] – Tiny memory leak when tunnel client is destroyed.
[DATAHUB-679] – Tiny memory leak when tunnel client starts.
[DATAHUB-680] – Point value fails to transmit under heavy load during initialization.
[DATAHUB-682] – DataHub reports an empty value when client requests an empty canonical type.
[DATAHUB-683] – Modbus cannot set linear transformation multiplier – always rejects with error.
[DATAHUB-703] – DataHub crash when changing an existing DDE connection that has never connected.
DataHub Improvements:
[DATAHUB-613] – Event log – add line breaks to allow copy and paste to Notepad.
[DATAHUB-614] – Work around some A&E clients that cannot accept a NULL pointer for strings.
[DATAHUB-620] – Add an option to the OPC server to limit integers to 32 bits.
[DATAHUB-649] – Core installer should clean up WebView left-over files from previous install.
[DATAHUB-653] – Update OpenSSL to version 1.02h.
[DATAHUB-654] – Update OPC Core Components to version 3.0.105.
[DATAHUB-688] – Change synchronization to get uninitialized modeled values from master even when sync is normally to master.
[DATAHUB-689] – Change A&E server to set LastEvent confidence to 0 when building event model.
[DATAHUB-690] – OPC A&E – do not create sources by discovery for simple and tracking events.
[DATAHUB-694] – Add an option in database query to emit the data as an Excel table.
[DATAHUB-697] – Do not send sync and model information to a write-only tunnel.
[DATAHUB-704] – Change to report Modbus slave exceptions instead of dropping the connection.
WebView Bugs Fixed:
[DATAHUB-684] – WebView cannot show an unsigned int with the top bit set.
[WEBVIEW-694] – Timestamp on DataPoints generated from xml result (from ODBC) should use DateTime.UtcNow.
[WEBVIEW-731] – ComboBox and ListBox problem with DisplayMember and SelectedValueMember properties.
[WEBVIEW-756] – Filtered Data Table – default parameters show warning message.
[WEBVIEW-757] – Series chart fails when data is not integer or changes format.
[WEBVIEW-768] – Remove a spurious warning pop-up related to page properties.
WebView Improvements:
[WEBVIEW-650] – Accommodate partial “page:” uri matching.
[WEBVIEW-663] – custom symbols – RotationSpeedRatio does not handle negative numbers.
[WEBVIEW-664] – Symbol rotation – auto reverse does not take effect immediately.
[WEBVIEW-665] – Symbol rotation should smoothly change as RPM dynamically changes.
[WEBVIEW-666] – Add support for fonts with names that include space characters.
[WEBVIEW-667] – Run/Design Mode toolbar button is not always easy to find.
[WEBVIEW-671] – Create FormatString specifier (@) for DHLabel that preserves number as text.
[WEBVIEW-698] – Enable shortcut keys to be handled in S#.

DataHub Bugs Fixed:
[DATAHUB-596] – Default permissions do not include data permissions
[DATAHUB-600] – WebView alarm control does not update after a reconnect
WebView Bugs Fixed:
[WEBVIEW-747] – No permissions to access historical data through WebView

DataHub Bugs Fixed:
[DATAHUB-544] – Constructing A&E strings with non-English characters sometimes produces garbage.
[DATAHUB-556] – Modbus connection does not stop when disabled.
[DATAHUB-558] – Certificate host name match fails if alternative host name is not present in certificate.
[DATAHUB-559] – Data becomes NOT CONNECTED on tunnel incorrectly.
[DATAHUB-560] – Modbus connection sends commands in parallel even when set to serialize.
[DATAHUB-562] – Modbus configuration allows a transform that results in division by zero.
[DATAHUB-563] – Read-only status being set incorrectly in some cases.
[DATAHUB-564] – DataHub crashes when an OPC A&E server sends a shutdown message.
[DATAHUB-567] – ODBC query sends the word “nil” instead of a NULL in XML document.
[DATAHUB-572] – Connection via SSL (TCP or HTTP) cannot validate the certificate.
[DATAHUB-577] – General options “Start when you log on to Windows” and “Allow only one running program instance” should not be mutually exclusive.
[DATAHUB-580] – Rare crash when tunnel connection exits.
[DATAHUB-583] – ICS-VU-029203 – Privilege escalation exploit through Gamma script default require path.
DataHub Improvements:
[DATAHUB-557] – Increase event log window buffer to 1000 lines.
[DATAHUB-561] – Make message serialization the default for Modbus connections.
[DATAHUB-566] – Add controls to set the type of information logged to disk in the event log window.
WebView Improvements:
[WEBVIEW-742] – Add SourceData property to Image to allow the image to be set through a data point.
[WEBVIEW-743] – Timers can now skip ticks in order to keep up with real time.

DataHub Bugs Fixed:
[DATAHUB-546] – A&E Acknowledgement does not always work through a redundancy configuration
[DATAHUB-548] – ICS-VU-780001 (ZDI-CAN-2981) – Remote code execution vulnerability
[DATAHUB-552] – DataHub crashes if OPC client sends a message after a fatal error
[DATAHUB-555] – Some commands to the DataHub engine from Gamma rejected after WebView login
DataHub Improvements:
[DATAHUB-545] – Speed up data browser window when loading a data hierarchy with many branches
[DATAHUB-553] – Add options for OPC DA to support VT_EMPTY canonical types
WebView Bugs Fixed:
[WEBVIEW-735] – WebView cannot load permissions after successful login
[WEBVIEW-737] – WebView does not correctly show pages when the path contains non-ASCII characters

DataHub Bugs Fixed:
[DATAHUB-542] – Modbus write fails for some integer conversions

DataHub Bugs Fixed:
[DATAHUB-533] – Modbus plugin not showing in Win XP and Server 2003
[DATAHUB-535] – SSL certificate host name match should be case insensitive
[DATAHUB-538] – Modbus driver reads more bytes than necessary
DataHub Improvements:
[DATAHUB-536] – Allow configuration of Modbus reply timeout
[DATAHUB-537] – Allow multiple Modbus connections to share a socket
[DATAHUB-539] – Improve CPU usage and performance in Modbus driver
[DATAHUB-540] – Upgrade SSL libraries to version 1.0.2a
[DATAHUB-541] – Improve efficiency of A&E initial connection and condition discovery

DataHub Bugs Fixed
[DATAHUB-504] – Uninstalling deletes user WebView pages and scripts
[DATAHUB-516] – Historian query and log ASP pages do not check permissions
[DATAHUB-517] – DDE drag-and-drop creates corrupt point names
[DATAHUB-519] – Store-and-forward reports corrupted bytes when running normally
[DATAHUB-520] – Script command created duplicate tunnel connections
[DATAHUB-525] – TCP tunnel will not try secondary server if both primary and secondary fail
[DATAHUB-527] – Commands on websocket connection sometimes corrupted after connect
[DATAHUB-529] – Incorrect packet length calculation in WebSocket
[DATAHUB-530] – Tunnel data synchronization sometimes does not deliver initial values
[DATAHUB-531] – DataHub crashes when reading an invalid timestamp from a database

DataHub Improvements:
[DATAHUB-511] – Add TunnelDelete and TunnelSaveConfig commands to tunnel/mirror plugin
[DATAHUB-521] – Add support for SSL certificate verification
[DATAHUB-526] – Upgrade SSL connections to use TLS 1.2
[DATAHUB-528] – OPC client connections will not send duplicate writes in a single transaction
[] OpenSSL upgraded to 1.0.1h: Fixes CVE-2014-0224, CVE-2014-0221, CVE-2014-0195, CVE-2014-0198, CVE-2010-5298, CVE-2014-3470

New DataHub Features:
[DATAHUB-483] – Add support for site (group) licenses
[DATAHUB-524] – Add support for Modbus TCP

WebView Bugs Fixed:
[WEBVIEW-700] – ConcurrentLogin violation results in Login Failure
[WEBVIEW-701] – A script that calls GETP twice on the same property generates an error
[WEBVIEW-703] – TrendChart is slow to load when too many Ticks
[WEBVIEW-710] – In RunMode, Controls marked NOT VisibleInRunMode are HitTestVisible
[WEBVIEW-722] – Memory leak when closing a pop-up dialog

New WebView Features:
[] Scripting now supports try/catch/finally blocks. Syntax is:
try { } catch (e) { } finally { }
where the finally { } block is optional. The catch block is not optional, so you cannot specify a try/finally statement. You can re-throw an exception from the catch block using throw(e).
[WEBVIEW-723] – Allow user to select whether last column of filtered data table uses all available space

Linux:
[] Cascade DataHub in Linux has been updated to version 7.3.6 to match the current Windows version.

Linux Bugs Fixed:
[] Relevant bug fixes in Windows from version 7.0.0 onward also apply to Linux.
[] When a TCP connection between Windows and Linux was lost due to a network failure, it was possible that both Windows and Linux marked the data as Not Connected

Linux Improvements:
[] SRRIPC module updated to V2.0.x. It can now be built on 64-bit Linux. See the module CHANGES file for details of changes and bug fixes.

DataHub Bugs Fixed
[DATAHUB-469] – DataHub crashes when SSL connection aborts during initialization
[DATAHUB-470] – DataHub crash when SQLite database is file locked
[DATAHUB-471] – License synchronization generates high network traffic in large systems
[DATAHUB-473] – ODBC to some versions of MS-Access fails due to column quotes
[DATAHUB-477] – ODBC to old MS-Access database fails with syntax error
[DATAHUB-479] – AJAX tree view sometimes generates an XML load error
[DATAHUB-480] – Crash when attempting to create an invalid domain name
[DATAHUB-481] – DataHub crashes on startup when odbc cache file is corrupt
[DATAHUB-484] – DataHub crashes when establishing many outbound SSL connections
[DATAHUB-486] – ODBC queryies do not accept ASP expresssions when run asynchronously
[DATAHUB-487] – Scroll bar does not render on A&E filter dialog
[DATAHUB-489] – OPC A&E does not update timestamps with non-compliant OPC A&E server
[DATAHUB-490] – OPC A&E does not update some events when server does not support condition browsing
[DATAHUB-491] – ZDI-CAN-2160: Attacker with file system access can run arbitrary code
[DATAHUB-492] – ZDI-CAN-2192 – Web server stack overwrite or crash with negative content length
[DATAHUB-493] – CVE-2014-0160 – Cogent DataHub is susceptible to the Heartbleed SSL bug

Improvements
[DATAHUB-475] – Add timeout parameters to the MailSend command-line program
[DATAHUB-488] – Add the ability to tunnel through a WebSocket connection
[] – Improve the speed of the .Net API under heavy point change loads
[] – Work around an Oracle behaviour where columns could be reported more than once
[] – Work around an issue in some OPC A&E servers that transmit all events as “refresh” events

New Features
[DATAHUB-476] – Add a mechanism for remotely updating a DataHub instance via a local network
[DATAHUB-482] – Add command-line arguments to show properties and hide the tray icon

WebView Bugs Fixed
[WEBVIEW-687] – Fix a problem in data table where changing a column name did not signal a change to the control for rendering [] – Add a new Watermarked Text control

WebView Improvements
[WEBVIEW-669] – Display user-friendly message when trying to open a Page with a newer version than the application
[WEBVIEW-685] – Expose Arrange commands (e.g., BringToFront) via WV.ExecuteCommand
[WEBVIEW-688] – Add new properties to the FilteredDataTable
[] – Add grouping, filtering and sorting to the PointDataTable control

DataHub Bugs Fixed
[DATAHUB-458] – Version command is available via TCP even without connection permission
[DATAHUB-461] – System monitor produces incorrect values when monitoring stopped processes (introduced in v7.3.3)
[DATAHUB-462] – A&E clients cannot connect to DataHub when it is running as a service
[DATAHUB-463] – ZDI-CAN-1981 – HTTP server crash when a query string is supplied to a POST
[DATAHUB-465] – DataHub crashes if logging debug info with datahub_write() and bad timestamp
[DATAHUB-466] – Non-compliant OPC server causes a DataHub crash
WebView Bugs Fixed
[WEBVIEW-673] – Series chart control produces an error when created
[WEBVIEW-677] – Allow series chart and table to handle Excel data and OPC arrays