Release notes
General notes:
Version numbers are formatted as x.y.z where x=major version, y=minor version and z=patch version
Regarding Blue/Green upgrades:
Blue/Green upgrades can be performed on environments running version a.b.c or newer.
ClearBlade only guarantees compatibility between one minor version and the next.
If an environment needs to be upgraded from one version to another in a Blue/Green fashion where the origin and target versions are separated by more than one minor version, then:
Multiple upgrade steps are required.
The steps must upgrade the environment to each of the minor versions between the origin and target versions.
Only one step per minor version is required.
Although a step can be used to upgrade to any patch version within a minor version, it is recommended that the latest patch version is chosen. This is because the latest patch version is likely to incorporate the most bug fixes.
For example, if upgrading from 9.36.2 to 9.38.0 either of these series of steps can be used:
9.36.2 -> 9.37.2 -> 9.38.0
9.36.2 -> 9.37.4 -> 9.38.0 (recommended)
2025.2.0
Date: 2025-07-01
Notes:
Platform:
Feature: MQTT connector for Azure Event Hub
Feature: Support shared access token authentication in the broker. This can be disabled with
DisableSharedAccessTokenAuth
.Feature: New query parser option that natively supports Postgres syntax. This can be enabled by setting config option
UseLegacyParser
tofalse
.Feature: New distributed lock store option. Add config options
ConsistentHashVirtualNodes
,HashRingGetNodeRetryCount
,HashRingGetNodeRetryDelaySeconds
,DebounceTimeoutSeconds
andClusterStablePeriodSeconds
to configure the consistent hash ring and waiting for the cluster to stabilize and connect to every other node. Add config optionsLockQueueSize
,MaxLockRetryAttempts
,LockRetryInitialDelayMilliseconds
,LockRetryMaxDelayMilliseconds
andLockRetryBackoffFactor
to configure the hash ring lock implementation.Enhancement: Add
ReportIntervalSeconds
andReportIntervalInitialDelaySeconds
config options for tuning metric reportingEnhancement: Add config options
AzureEventHubPullBatchSize
,AzureEventHubPullTimeoutSeconds
,AzureEventHubPushBatchSize
andAzureEventHubPushTimeoutSeconds
for customizing the Event Hub connectorEnhancement: Allow preloaded services to serve many requests concurrently, even if no run-as user is set.
Enhancement: Add config variable
MaxInFlightPreloadedRequestsPerInstance
to limit the number of requests that a preloaded service instance will serve concurrently.Enhancement: Pull user contexts in execution engines directly from global store instead of storing a local copy. This deprecates
HotSwapUserCtx
.Enhancement: Allow use of the
EXCLUDED
keyword in theON CONFLICT
clause of raw queriesEnhancement: Reject raw queries that use black-listed functions. See config options
RawQueryFunctionBlacklist
,DefaultQueryFunctionBlacklistOverride
, andDisableDefaultQueryFunctionBlacklist
.Enhancement: Upgrade MongoDB driver to v2.2.2
Fix: Check primary key index name dynamically using queries before converting collections to hypertables
Fix: Reject raw queries that contain cyclical aliases
2025.1.11
Date: 2025-06-27
Notes:
Platform:
Fix: Message history getting deleted when using cb-cli push that excludes message history settings
Enhancement: Add prometheus metric
clearblade_rpc_messages
to track total number of RPC messages sent by each nodeEnhancement: Change default
Buckets.QueueEmptyIntervalSecs
config value to 1 hour
2025.1.10
Date: 2025-06-24
Notes:
Platform:
Fix: Decode
null
andundefined
bodies in the fetch library instead of throwing an errorFix: Remove default throttlers when
EnableDefaultThrottlers
is updatedFix: Don't allow permissions to be set on invalid MQTT topic filters
Fix: verifytables subcommand failing with "table is already a hypertable" and "constraint already exists" errors
Fix: system uploads not removing library dependencies from service metadata
Fix: Prevent race condition when updating config through the
set
subcommand which could generate malformed toml filesFix: Prevent panic when using external brokers in V8.
Enhancement: Add prometheus gauge
clearblade_security_sessions
for user, dev, and device sessions (may cause long scrape times, disabled by default with configSecurity.DisableSessionMetrics
)Enhancement: Support
{systemKey}
wildcard in topic permissions to match the current system
2025.1.9
Date: 2025-06-06
Notes:
Platform:
Fix: Fix builds for 32-bit edges
2025.1.8
Date: 2025-06-06
Notes:
Platform:
Enhancement: Allow account registration when using OIDC without requiring full OIDC flow
Enhancement: Faster json marshaling on large responses from code services
Enhancement: Upgrade Mongo driver to 1.17.4
2025.1.7
Date: 2025-05-27
Notes:
Platform:
Fix: Setting number values for config values with the
set
subcommand failing on remote cluster nodes due to type conversion errorFix: Preloaded request timeout not changed when updated in code service
Fix: Fix issue that prevented duktape engines from having their metrics tracked while exiting due to timeout or kill
Enhancement: Add
setlocal
subcommand for setting config values on a single cluster nodeEnhancement: Include engine type in currently running services output
Enhancement: Add config var
Engine.PreloaderQueueSize
to control preloaded request queue sizeEnhancement: If local queue is full when
MQTT.ShareGroupLocalPreference
is enabled, forward the message to another node instead of immediately droppingEnhancement: Add config var
RPC.RPCConnectionTimeout
to control the initial connection timeout to the platform
2025.1.6
Date: 2025-05-16
Notes:
Platform:
Fix: Improve V8 engine termination so that services which get stuck in the event loop (E.g. infinite loops) may be killed.
Fix: Prevent race condition in AWS Go SDK that could occasionally cause Kinesis MQTT connectors to panic
2025.1.5
Date: 2025-05-12
Notes:
Platform:
Enhancement: Allow infinite code service restarts, with exponential backoff controlled by engine config variables
QuickRestartThresholdMs
,MinRestartIntervalMs
, andMaxRestartIntervalMs
. Defaults to a 5s threshold, with a minimum interval of 1s and a max of 60sEnhancement: Upgrade sqlite dependency to v3.49.1
Enhancement: Explicitly close Mongo cursors
Enhancement: Add index for email_lower_case column in user tables
Enhancement: Reduce the number of logs when a shared queue is full and drops a message
2025.1.4
Date: 2025-04-14
Notes:
Platform:
Fix: Revise TLS handling to allow TLS on the edge.
Enhancement: Add HTTP.UseTLSHTTP config var to enable serving HTTP over TLS
2025.1.3
Date: 2025-04-03
Notes:
Platform:
Fix: Undo alias resolution to fix relation does not exist error when using an alias the same name as a collection (SQLSTATE 42P01)
2025.1.2
Date: 2025-04-02
Notes:
Platform:
Fix: Stop substituting aliases in raw queries to avoid table name specified more than once error (SQLSTATE 42712)
2025.1.1
Date: 2025-03-31
Notes:
Platform:
Fix: Change malloc arg type to support 32-bit architecture builds
2025.1.0
Date: 2025-03-31
Notes:
Platform:
Fix: Prevent all websocket servers from sharing the same router. The websocket server at the config's
BrokerWSPort
serves/mqtt
andMessagingAuthWSPort
serves/mqtt_auth
.Fix: Allow binary payloads to be sent to code services via webhook request body.
Enhancement: Add config option,
DisableCodeCache
, which defaults totrue
. Due to internal data structure changes, this option must be set totrue
during the blue-green deployment process.Enhancement: Add config option,
DisableBrokerCache
to disable redis and use the database to process new MQTT connections and perform client ID checks. Defaults to falseEnhancement: Change distributed lock wait queue bumper to operate on a per-lock basis instead of per-node
Enhancement: Return more detailed error messages when system creation fails.
Enhancement: Add prometheus gauge,
clearblade_remote_shell_sessions
, to track number of remote shell sessions per edgeEnhancement: Add prometheus metrics
clearblade_code_services_heap_bytes
andclearblade_code_services_heap_bytes_overhead
to track long running service heap usage.Enhancement: Replace config option
LicenseRenewalWebhook
withLicenseRenewalWebhooks
to support fallback URLs.Enhancement: Add config variable
ShareGroupLocalPreference
(default false) which will distribute messages to share group members on the same node that a message arrives on.Enhancement: Add v8 and onnx build support to about response
Feature: Support the
clearblade_ai
library in V8 servicesFeature: Add websocket endpoint to allow opening a remote shell to connected edge devices.
Feature: Add RPC message retries for node to node communication. See config options
RPCPlatformMaxRetries
andRPCRetryBackoffSeconds
.Feature: Track heap usage of javascript engines and report metrics to prometheus. See config option
TrackHeapUsage
.Feature: Add
cache
subcommandFeature: Add the following functions to the
crypto
library for working with keys:importKey
,generateKey
,generateX509Certificate
,exportKey
.Feature: Add edge uptime tracker and metrics reporting
9.39.10
Date: 2025-03-11
Notes:
Platform:
Fix: cryptoJS undefined error in duktape crypto library
9.39.9
Date: 2025-03-10
Notes:
Platform:
Fix: OIDC failing due to capital letters in developer emails
Enhancement: Add option for verbose logging around sessions and user contexts
9.39.8
Date: 2025-02-27
Notes:
Platform:
Enhancement: Update Mongo driver to v1.17.3
Enhancement: Return better error message when auth or registration services return unexpected results
9.39.7
Date: 2025-02-21
Notes:
Platform:
Fix: Sessions deleted if database returns error during auth process
Fix: Panic caused by passing cyclic object to native library functions in code service
Fix: Add TTL to collection cache entries
9.39.6
Date: 2025-02-17
Notes:
Platform:
Fix: Clean up Mongo server connections on connection failures
Fix: Minor memory leak in V8 during unhandled promise rejections
Fix: Cancel sleeps in microservices that time out
Fix: Return error when subcommand does not exist
Fix: Disabled timers erroneously report as enabled
Fix: Ensure all locks acquired by services are tracked and removed on service completion
Fix: Properly parse concat operator in raw queries
Fix: Handle NaN/Inf float values when querying collections
Fix: Summarize goroutines which list their parent goroutine in stack dump
Enhancement: Remove confusing log stating "Had a problem getting first element off of queue ... redis: nil"
Enhancement: Add optional IoTCore logs for MQTT PINGRESPs and PUBACKs sent by server
Enhancement: Change default Cloud Logging resource type config value to "global"
9.39.5
Date: 2025-01-27
Notes:
Platform:
Fix: Allow comma separated list of values in accept-encoding header
Fix: Avoid panic in MQTT connect when device session does not exist
Fix: Load timer queue on node startup
9.39.4
Date: 2025-01-10
Notes:
Platform:
Fix: Respond with error if unregistered RPC message arrives on edge
Enhancement: Add logStdErr to v8
Enhancement: Drop PubSub messages if device does not exist
9.39.3
Date: 2025-01-07
Notes:
Platform:
Fix: Deadlock in Postgres distributed lock implementation
Fix: Race condition in distributed read locks
Fix: System upload bucketset pkey violation error
Fix: Strip non-existent columns in deploy messages
9.39.2
Date: 2024-12-27
Notes:
Platform:
Fix: V8 NaN panic
9.39.1
Date: 2024-12-20
Notes:
Platform:
Feature: Kafka MQTT connector
Feature: Pulsar MQTT connector
Feature: Remote DB wipe for edges
Feature: Remove restart for edges
Feature: Remote shell command execution for edges
Feature: Remote get/set config for edges
Feature: Add priority system to throttlers
Feature: Add metrics for RPC RTT and queue times
Enhancement: Allow updating log level on running code services
Enhancement: Add new permission type for edge remote operations
Enhancement: Use database for timers/triggers instead of relying on cache
Enhancement: Add signal timeout option to fetch library
Enhancement: Add default timeout to fetch library
Enhancement: Allow distributed locks to be stored in postgres
Enhancement: Add platform version and feature support to cbmeta
Enhancement: Use duktape as fallback if v8 not available
Enhancement: Add transaction around system creation
Console:
Feature: Code service log levels
Feature: DB Stats tab on admin page
Fix: Incorrect value shown for timer frequency if time is under one minute
9.38.9
Date: 2024-12-20
Notes:
Platform:
Fix: Correct marshal logic when pushing return value to v8
Fix: Correct edge auto-upgrade version comparisons
9.38.8
Date: 2024-12-19
Notes:
Platform:
Fix: Allow duplicate PubSub topics in connectors
Fix: Recover from panics in v8 code services
Fix: Handle logging sets in v8
Fix: Use snake case for bucket set config options
Fix: Respond to unregistered RPC messages with error
9.38.7
Date: 2024-12-16
Notes:
Platform:
Enhancement: Promote broker trace logs to info level
Fix: Allow pubsub migration to continue if some systems throw errors
Fix: Prevent password auth once a user/developer switches to OIDC
Fix: Allow logging enabled to override log level
Fix: Account for timescale versions and availability when fetching db stats
Fix: Resolve panic on PubSub message received
Fix: Propagate engine type when pulling code meta from db to prevent reverting V8 services back to Duktape
9.38.6
Date: 2024-12-10
Notes:
Platform:
Enhancement: Remove topic mapping requirement when creating Google PubSub or Amazon Kinesis MQTT connectors
9.38.5
Date: 2024-12-09
Notes:
Platform:
Fix: Properly marshal null and undefined in v8
9.38.4
Date: 2024-12-09
Notes:
Platform:
Fix: Set deviceName field from broker authentication errors
Fix: Set proper permissions on collections when using system upload
Fix: Store params with code services when set in console
Fix: Use correct error string and fix parsing of some failed run cases
Fix: Make data formats consistent between duk and v8
9.38.3
Date: 2024-11-22
Notes:
Platform:
Enhancement: Use caller name instead of lock name in lock metrics
Fix: Send error response on bucketset file create failures
Fix: Better version comparison algorithm for edge upgrades
9.38.2
Date: 2024-11-15
Notes:
Platform:
Fix: Stop overwriting redirect responses from services with status codes in the 300s
Fix: Properly initialize node socket object to avoid push call on undefined object error
Fix: Add details to s3 files in bucketset list endpoint
Fix: Always set deployment name in sync status messages
Fix: Ensure async functions run asynchronously in v8
Fix: Better promise rejection handling in v8
Fix: Use proper parameter order for create_jwt in v8
Fix: Fire triggers on collection actions in v8
9.38.1
Date: 2024-11-05
Notes:
Platform:
Fix: Only flush timer cache during init on leader node
Fix: Only add a node to the leader manager after a successful connection
Fix: Skip data upsert with no data in system upload collection handler to avoid panic
9.38.0
Date: 2024-10-17
Notes:
Platform:
Feature: Add log levels to code services
Feature: Add admin endpoint to reset database statistics
Feature: Add requireLibrary to v8
Enhancement: Allow filtering edges based on connectivity status
Enhancement: Remove system secrets
Enhancement: Add additional logging and auditing to service account session deletion
Enhancement: Ignore unregistered RPC messages
Enhancement: Migrate PubSub connections to MQTT connectors
Enhancement: Add prometheus metric for gRPC connections
Enhancement: Add prometheus metric for RPC execution times
Fix: Don't print periodic stat logs when executing subcommands
Fix: Add external broker connections back to prometheus metrics
Console:
Enhancement: Remove system secret from system settings page
Fix: Allow edge names to start with a number
9.37.5
Date: 2024-11-05
Notes:
Platform:
Fix: Only flush timer cache during init on leader node
Fix: Only add a node to the leader manager after a successful connection
Fix: Skip data upsert with no data in system upload collection handler to avoid panic
9.37.4
Date: 2024-10-17
Notes:
Platform:
Fix: Handle new user in code service meta during system upload dry runs
Fix: Remove preemptive delete from running service map
Fix: Remove extra lock in broker leading to deadlocks in connect
9.37.3
Date: 2024-10-15
Notes:
Platform:
Fix: Correct column name in device public key replace function
9.37.2
Date: 2024-10-11
Notes:
Platform:
Enhancement: Move node connection stats log from debug to info level
Fix: Allow service undeploy to succeed if service is already gone
Fix: Don't attempt to sync secrets to edges with insecure connections
Fix: Sort undeploy messages in reverse order to fix dependency errors
9.37.1
Date: 2024-09-30
Notes:
Platform:
Fix: Send metadata along with gRPC requests
Fix: Register missing error types with gob
9.37.0
Date: 2024-09-26
Notes:
Platform:
Feature: Kinesis integration
Feature: gRPC client support in code services
Feature: Full system support in system upload
Feature: Prometheus metrics for distributed locks and leader status
Feature: Admin endpoint for database statistics
Feature: Add detach node subcommand
Enhancement: Allow configuring the mTLS MQTT ALPN string
Enhancement: Add stack trace to unhandled promise rejection errors
Enhancement: Allow changing RPC MaxInFlightWorkers and MaxProcessMessageQueue config variables at runtime
Enhancement: Calculate Prometheus gauge metrics at scrape time
Enhancement: Aggregate dropped event queue messages to avoid spamming logs
Enhancement: Improve logging around auto-balance process
Enhancement: Improve stat log structure in json log mode
Enhancement: Add package category to log fields in json log mode
Enhancement: Add more details to router permission denied errors
Fix: Prevent edges from being downgraded when connecting to older platform nodes
Fix: Prevent deadlock on timer queue reinitialization
Fix: Stop auto-scaling services that exit too quickly
Fix: Correct service stack trace line numbers when custom libraries are included
Fix: Remove sessions when system is deleted
Fix: Modify killclient to work with AddRandom config option
Fix: Prevent duplicate throttlers from being created
Console:
Fix: Add bucket set button throws error
9.36.6
Date: 2024-08-27
Notes:
Console:
Fix: Updated cblib dependency to allow for importing secrets via IPM
9.36.5
Date: 2024-08-23
Notes:
Platform:
Enhancement: Add temporary config option to reduce JWT size by disabling JWT auth
Fix: Handle interface conversion to avoid panic in cache MGetInternal
Fix: Sync collection schema when only syncing a subset of collection items
9.36.4
Date: 2024-07-30
Notes:
Console:
Feature: Add OIDC allowed domain filters
Enhancement: Remove unnecessary comment in micro service template
9.36.3
Date: 2024-07-25
Notes:
Platform:
Fix: Added checks in internal MQTT client to avoid nil dereference panic
Fix: Use more accurate queue stats in autoscaler
Fix: Restart timer queue after cluster leadership change
9.36.2
Date: 2024-07-15
Notes:
Platform:
Fix: Ensure Postgres system errors are propagated back to code services
Fix: Properly lock when killing code service to avoid panic during deletion
Fix: Use the correct query in sync status to delete errors on the initial edge handshake
Console:
Fix: The simple filter for tables does not work
9.36.1
Date: 2024-07-01
Notes:
Platform:
Feature: Add subcommand for dumping database statistics
Feature: Add subcommand for manually reinitializing timer queue
Enhancement: Add config options for sync queue reaper enabled, interval, and per-target thresholds
Enhancement: Add timeouts to RPC message calls
Enhancement: Reregister node info in Redis if keys get cleared unexpectedly
Fix: Avoid index out of range panic in code services caused by clearTimeout
Fix: Use proper timescale chunk sizes for message history tables and add subcommand for manual fixes
Fix: Ensure auto-scaled services keep receiving messages after scaling down
Fix: Enforce minimum auto-scale concurrency of 1
Console:
Fix: Upgrade filter package to fix CSP violation
9.36.0
Date: 2024-06-18
Notes:
Platform:
Feature: One-step mTLS support for MQTT
Feature: Stream service autoscaling
Feature: Add overridable Process.onShutdown callback in JavaScript engine
Feature: Add Prometheus metrics for active and throttled MQTT connects
Feature: Add Prometheus metrics for MongoDB operations
Feature: Add a subcommand for toggling the force clean session option for the system
Feature: Add a subcommand for manually setting the leader node
Feature: Periodically dump stack to disk
Enhancement: Gracefully terminate stream services
Enhancement: Use blue/green update process for stream services
Enhancement: Capture system enable and disable in the audit trail
Enhancement: Add gin index to messaging table topicid column
Enhancement: Skip persistent session message history query if the topic is not whitelisted
Enhancement: Allow userid as a parameter in the userConnections native library function
Enhancement: Add retries on external DB initial connect
Enhancement: Support users, collections, webhooks, bucket sets, and external DBs in the system upload endpoint
Enhancement: Force cluster leader change if leader ID is invalid
Enhancement: Allow migrations to run when a node with a newer version joins the cluster
Enhancement: Code log cleanup optimizations
Enhancement: Warning log when device numid is missing in Pub/Sub messages
Console:
Feature: Add auto scale settings to the service settings tab
Enhancement: Reorganize the code service settings tab
Fix: Selecting OIDC scope crashes page
9.35.4
Date: 2024-06-04
Notes:
Fix: Ensure correct primary key is returned for revoked certificates migration
9.35.3
Date: 2024-05-31
Notes:
Enhancement: Add config variable for Google Cloud logging resource type
Enhancement: Reduce distributed locking around MQTT sessions
Enhancement: Reduce database querying around MQTT sessions
Fix: Disallow duplicate entries in mTLS revoked certificates
9.35.2
Date: 2024-05-23
Notes:
Platform:
Fix: Persist message history settings on system disable
Fix: Session handling with anon clients no longer leads to nil pointer panic
Fix: Allow timer creation with zero repeats from code services
Enhancement: Raw query log moved from debug to super level
Console:
Fix: Toggle all logging wipes run_user setting
Feature: Add sensitive params checkbox to code service advanced settings
Enhancement: Add missing triggers
9.35.1
Date: 2024-05-07
Notes:
Platform:
Enhancement: Add helm chart version to reported metrics
Fix: Revert accidental rename of client connect/disconnect trigger payload key to "triggerKey"
Fix: Add missing error string in kill-client error log
Fix: Register missing map[string]string type with gob
Fix: Ensure developer tokens are removed from the cache after logout
Fix: Avoid potential concurrent map read/write panic in preloaded request manager
Fix: Avoid potential assignment to nil map panic in preloaded request manager
Console:
Fix: Subscribing on the test topic tab on the messages page doesn't work if a sync status message is received before the topic is set
9.35.0
Date: 2024-04-24
Notes:
Platform:
Feature: System upload endpoint with support for code services, libraries, and roles
Enhancement: Use POST request for subcommands to allow URLs as arguments
Enhancement: Separate preloaded request queues from execution engines to prevent dropped requests
Enhancement: Add Prometheus metrics for preloaded request queues
Enhancement: Accept certificate hash in mTLS revocation endpoint
Console:
Feature: Add V8 support when creating/editing services
Fix: Handle non-200 status code when testing code services
Note: If blue/green environments want to upgrade to 9.35.0, they’ll have to go through the three-step upgrade sequence beginning with version 9.34.0.1.
9.34.4
Date: 2024-05-31
Notes:
Enhancement: Add config variable for Google Cloud logging resource type
Enhancement: Reduce distributed locking around MQTT sessions
Enhancement: Reduce database querying around MQTT sessions
The new versions in our new recommended blue/green upgrade sequence are 9.34.0.2 -> 9.34.2.2 -> 9.34.4.
9.34.3
Date: 2024-04-24
Notes:
Enhancement: Node library UDP packet additions
Enhancement: Remove noisy library import cycle log
Fix: Webhooks not working due to failed migration
Fix: Broker deadlock with shared MQTT subscriptions from code services
Note: This is part three of a three-part release series to support RPC updates in blue/green environments. If your environment needs strict blue/green upgrades, you must successfully deploy each of the three versions sequentially and can’t skip any.
9.34.2.2
Date: 2024-05-31
Notes:
Enhancement: Add config variable for Google Cloud logging resource type
Enhancement: Reduce distributed locking around MQTT sessions
Enhancement: Reduce database querying around MQTT sessions
The new versions in our new recommended blue/green upgrade sequence are 9.34.0.2 -> 9.34.2.2 -> 9.34.4.
9.34.2.1
Date: 2024-04-26
Notes:
Fix: Broker deadlock with shared MQTT subscriptions from code services
Fix: Webhooks not working due to failed migration
Note: This is part two of a three-part release series to support RPC updates in blue/green environments. If your environment needs strict blue/green upgrades, you must successfully deploy each of the three versions sequentially and can’t skip any.
9.34.2
Date: 2024-04-03
Notes:
Fix: Forwarding MQTT5 messages across cluster nodes causing RPC disconnection
Fix: Execution engines that subscribed to shared topics not being cleaned up after termination, leading to memory leak
Fix: P2P migrations erroring due to missing DEK
9.34.1
Date: 2024-03-28
Notes:
Enhancement: Add Prometheus metrics for MQTT shared topic queues
Enhancement: Add JSON option to dump stack subcommand
Enhancement: Add RPC handlers for code updates
Fix: Memory leak in Duktape context cache
9.34.0.2
Date: 2024-05-31
Notes:
Enhancement: Add config variable for Google Cloud logging resource type
Enhancement: Reduce distributed locking around MQTT sessions
Enhancement: Reduce database querying around MQTT sessions
The new versions in our new recommended blue/green upgrade sequence are 9.34.0.2 -> 9.34.2.2 -> 9.34.4.
9.34.0.1
Date: 2024-04-26
Notes:
Enhancement: Add Prometheus metrics for MQTT shared topic queues
Fix: Memory leak in Duktape context cache
Fix: Execution engines that subscribed to shared topics not being cleaned up after termination, leading to memory leak
Fix: Broker deadlock with shared MQTT subscriptions from code services
Fix: Webhooks not working due to failed migration
Note: This is part one of a three-part release series to support RPC updates in blue/green environments. If your environment needs strict blue/green upgrades, you must successfully deploy each of the three versions and can’t skip any.
9.34.0
Date: 2024-03-22
Notes:
Feature: Add endpoint for reading platform config
Feature: Improve raw query parsing to support the ON CONFLICT clause for upserts
Feature: Kill clients if they accumulate too many unacknowledged QoS 1/2 messages
Feature: Add CORS header config variables
Feature: Add ConsoleURL config variable
Enhancement: Separate MQTT shared subscription queues from execution engines to prevent dropped messages
Enhancement: Allow multiple route levels and path variables in webhooks
Enhancement: Remove the item_id unique constraint on the hypertable collections
Enhancement: Move retain messages to the database to avoid expensive cache scans on subscribe
Enhancement: Suppress error messages when autobalanced services are restarted
Enhancement: Rename EdgeCookie to EdgeToken in edge config
Enhancement: Stop creating timer and trigger topic permissions by default
Enhancement: Add session ID and IP to trigger data for connect, disconnect, subscribe, and unsubscribe triggers
Enhancement: Add Prometheus metric for QoS storage map size
Enhancement: Add MQTT version to current connections Prometheus metric
Enhancement: Add init cache expiry to make blue/green upgrades easier
Fix: Make edge retry failed sync events without requiring a reboot
Fix: Attempt to reconnect if node connections are lost in a cluster
Fix: Prevent double close on channel panics when deleting systems
Fix: Remove cache race condition when deleting or renaming columns
Fix: Clean up MQTT trigger config table on system delete
9.33.8
Date: 2024-05-23
Notes: