ClearBlade IoT Enterprise and Edge

9.30 - 9.39

9.39.10 (2025-03-11)

Platform:

  • Fix: cryptoJS undefined error in duktape crypto library

9.39.9 (2025-03-10)

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 (2025-02-27)

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 (2025-02-21)

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 (2025-02-17)

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 (2025-01-27)

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 (2025-01-10)

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 (2025-01-07)

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 (2024-12-27)

Platform:

  • Fix: V8 NaN panic

9.39.1 (2024-12-20)

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 (2024-12-20)

Platform:

  • Fix: Correct marshal logic when pushing return value to v8

  • Fix: Correct edge auto-upgrade version comparisons

9.38.8 (2024-12-19)

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 (2024-12-16)

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 (2024-12-10)

Platform:

  • Enhancement: Remove topic mapping requirement when creating Google PubSub or Amazon Kinesis MQTT connectors

9.38.5 (2024-12-09)

Platform:

  • Fix: Properly marshal null and undefined in v8

9.38.4 (2024-12-09)

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 (2024-11-22)

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 (2024-11-15)

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 (2024-11-05)

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 (2024-10-17)

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 (2024-11-05)

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 (2024-10-17)

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 (2024-10-15)

Platform:

  • Fix: Correct column name in device public key replace function

9.37.2 (2024-10-11)

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 (2024-09-30)

Platform:

  • Fix: Send metadata along with gRPC requests

  • Fix: Register missing error types with gob

9.37.0 (2024-09-26)

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 (2024-08-27)

Console:

  • Fix: Updated cblib dependency to allow for importing secrets via IPM

9.36.5 (2024-08-23)

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 (2024-07-30)

Console:

  • Feature: Add OIDC allowed domain filters

  • Enhancement: Remove unnecessary comment in micro service template

9.36.3 (2024-07-25)

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 (2024-07-15)

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 (2024-07-01)

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 (2024-06-18)

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 (2024-06-04)

  • Fix: Ensure correct primary key is returned for revoked certificates migration

9.35.3 (2024-05-31)

  • 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 (2024-05-23)

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 (2024-05-07)

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 (2024-04-24)

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 (2024-05-31)

  • 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 (2024-04-24)

  • 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 (2024-05-31)

  • 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 (2024-04-26)

  • 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 (2024-04-03)

  • 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 (2024-03-28)

  • 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 (2024-05-31)

  • 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 (2024-04-26)

  • 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 (2024-03-22)

  • 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 (2024-05-23)

  • Enhancement: Optimize database handling of MQTT sessions

9.33.7 (2024-03-06)

  • Enhancement: Optimize retrieve session calls on client connect

9.33.6 (2024-03-05)

  • Enhancement: Allow forcing clean sessions in specific systems

9.33.5 (2024-03-04)

  • Enhancement: Send SUBACK before firing subscribe triggers

  • Enhancement: Add additional packet fields to broker trace logs

  • Enhancement: Improve logging around Google Cloud loggers

  • Fix: Panic in message expiry store

9.33.4 (2024-02-23)

  • Fix: Clients with clean session false not receiving missed messages

9.33.3 (2024-02-21)

  • Fix: Client tracing only reporting connect packets

  • Fix: regeneratorRuntime not installed for React portals

9.33.2 (2024-02-15)

  • Fix: Code service index out of bounds panic caused by clearTimeout

  • Fix: Edge cache causing occasional sync issues

  • Fix: Unable to load mfe from localhost

  • Enhancement: Update jQuery and DOMPurify dependencies

  • Feature: Allow for configuring IA CSP header via flag

9.33.1 (2024-02-12)

  • Fix: User fetch error causing trigger and code update issues

9.33.0 (2024-02-07)

  • Feature: Add certificate auth option for edges

  • Feature: Add endpoints for creating foreign keys on device, user, and edge tables

  • Feature: Add endpoint for deleting foreign keys from collections

  • Feature: Periodically remove old Prometheus labels

  • Enhancement: Make user and developer emails case-insensitive

  • Enhancement: Improve handling of sessions with half-open connections

  • Enhancement: Treat unhandled promise rejections as errors

  • Enhancement: Allow service accounts to be created with no password

  • Enhancement: Allow flagging code services as having sensitive parameters

  • Enhancement: Allow queries when deleting secrets

  • Enhancement: Add config option to prevent auto-creation of throttlers

  • Enhancement: Add config options for disabling MQTT 5 clients and select features

  • Fix: Code table not getting migrated in P2P system migrations due to unique constraint error

  • Fix: Change topic permission variable from deviceID to deviceName

  • Fix: Stack dump parsing failures due to multiple receivers in function calls

9.32.6 (2024-01-30)

  • Fix: Post to create user endpoint not returning user email

  • Fix: Edge restart required after adding new topic to history storage

  • Fix: Race condition in geo library

  • Fix: Admin panel analytics showing the wrong count for services and libraries

  • Fix: Update docs link to point to the new Confluence space

  • Fix: Disable name attribute in table fields to prevent LastPass from filling in values

  • Fix: Fatal no pkey found error on edges

  • Enhancement: Add the ability to search for a list of secrets

9.32.5 (2024-01-22)

  • Fix: Being unable to remove all dependencies for a library

  • Fix: Deadlock in broker unsubscribe

  • Fix: URL encoding for secrets page

  • Enhancement: Allow variables in topic permissions

  • Enhancement: Add geo library and new UUID to V8 runtime

  • Enhancement: Show device IDs in the audit log when multiple devices are updated

  • Feature: Add endpoints for adding and listing foreign keys on a collection

  • Feature: Remote recovery mode management

  • Feature: P2P system migration

9.32.4 (2024-01-12)

  • Fix: Service account API requests getting user cannot access resource error

  • Fix: Prevent service results from being stringified in the v8 engine

9.32.3 (2024-01-10)

  • Feature: Add foreign key support

  • Feature: MQTT 5 subscription options

  • Feature: MQTT 5 session expiry

  • Feature: MQTT 5 subscription identifiers

  • Enhancement: Store license in DB

  • Enhancement: Set default license renewal webhook URL

  • Enhancement: Improve edge upgrade error message

  • Enhancement: Make metrics reporting mandatory

  • Fix: Periodic ANON token permission denied errors

  • Fix: Inconsistent throttling for webhooks

  • Fix: 2FA emails being sent to users even when 2FA is disabled in the system

  • Fix: Send instance metrics on startup instead of waiting for the interval

  • Fix: Ignore version suffix when checking version equality

  • Fix: Prevent incorrect subscription options from being applied when filters overlap

  • Fix: Remove topic prefix from MQTT 5 shared subscriptions

9.32.2 (2023-12-15)

  • Enhancement: Set object-src none for IA CSP headers

9.32.1 (2023-12-13)

  • Feature: MQTT 5 message expiry

  • Feature: MQTT 5 set max packet size

  • Feature: MQTT 5 will delay

  • Feature: MQTT 5 reason codes and strings

  • Feature: MQTT 5 assigned client ID

  • Enhancement: IA CSP headers

9.32.0 (2023-12-06)

  • Feature: MQTT 5 flow control

  • Feature: MQTT 5 max keep alive

  • Feature: MQTT 5 topic aliases

  • Feature: mTLS restructure and cert revocation support

  • Feature: Publish to gateway errors topic upon subscription to invalid topic

  • Enhancement: Support cgroups v2 API in metric collection

  • Enhancement: Add option to enforce IoT Core client ID structure strictly

  • Fix: Skip adding notify keyspace events to the Redis cluster

  • Fix: Create index error on older Postgres and timescale versions

  • Fix: Unit tests failing due to default throttlers

  • Fix: v8 mem leak

  • Fix: Generate code OOM

  • Fix: Default brute force throttlers not getting added on fresh DB

9.31.3 (2023-11-20)

  • Feature: Add default brute force throttlers

  • Enhancement: Index sessions tables

  • Enhancement: Warn when using deprecated CLI flags

  • Fix: Create index error when timescale disabled

9.31.2 (2023-11-16)

  • Enhancement: Add attributes to forwarded messages from Pub/Sub

9.31.1 (2023-11-10)

  • Feature: Pub/Sub to MQTT forwarder

  • Feature: Configurable MQTT auth delay

  • Feature: Provide unset capability on user password

  • Feature: OIDC filters

  • Feature: Frontend for toggling OIDC

  • Enhancement: Bulk update when draining caches

  • Fix: SQLite JSON stringified

  • Fix: Request ID being cached and reused

9.31.0 (2023-11-06)

  • Feature: Allow creating composite indexes

  • Feature: User MQTT session connections API

  • Feature: Implement TTL override

  • Enhancement: Certificate common name check for mTLS

  • Enhancement: Periodically print RPC queue size

  • Enhancement: Redis cluster support

  • Fix: Respond with 500 on timeout

  • Fix: v8 memory leak

  • Fix: Device timestamps are not updated when attached to gateways

9.30.12 (2023-11-01)

  • feature: allow swapping out redis with memory store

  • enhancement: print http errors

  • enhancement: increase default max service caches

  • enhancement: allow increasing max thread count

  • fix: check delete query uuid

  • fix: resubscribe client if clean session false

  • fix: user ctx json marshal errors

  • fix: update heartbeat of attached devices

  • fix: roles table not getting cleaned after system delete

9.30.11 (2023-10-19)

  • enhancement: add topic index to message history tables

  • enhancement: turn down noisy logs for device cache and apps table misses

  • fix: userroles trigger not firing when applying role to device from service

  • fix: off by one error on max service caches

  • fix: cleanupclosedclient locks with empty name and systemkey causing high redis cpu

9.30.10 (2023-10-05)

  • enhancement: add structured logs in mqtt client handling

  • enhancement: kill client support for random client ids

  • enhancement: cache user ctx

  • fix: log levels broken and json logs not parsed properly

9.30.9 (2023-10-02)

  • enhancement: structured logging to allow adding context to logs

  • enhancement: allow subscribing to the same topic across multiple brokers in a code service

  • enhancement: remove deprecated dependencies

  • fix: panics caused by RPCStatsString call

  • fix: disallow deleting service account sessions via session api

  • fix: stop twilio subaccount creation on startup

9.30.8 (2023-09-27)

  • enhancement: use system cache for system info

  • fix: auto balance on edge requiring run on platform set to true

9.30.7 (2023-09-26)

  • fix: some delete queries unexpectedly returning data causing memory issues

9.30.6 (2023-09-22)

  • enhancement: allow limiting concurrent mqtt connections

  • enhancement: add device key replace async function

  • enhancement: add tracing to debug output

  • enhancement: return proper error when dropping message due to max size

  • fix: remove sensitive user info from audit trail updates

  • fix: e2p custom sync not working due to incorrect asset edge cache set

  • fix: error creating edges via console due to excess systemkey fields

  • fix: execute timer as system owner if set user is removed

9.30.5 (2023-09-08)

  • feature: up the queue size and number of workers

  • enhancement: add ability to disable retain messages

9.30.4 (2023-09-07)

  • feature: rpc message counts by type in logs

  • enhancement: move device cache to local to ease redis pressure

  • fix: hide default columns v2

9.30.3 (2023-08-29)

  • enhancement: make client ids unique

9.30.2 (2023-08-29)

  • enhancement: mqtt5 property handling

  • fix: excessive autobalancer restarting on startup

  • fix: check preloaded service context cancelled before forwarding request

9.30.1 (2023-08-23)

  • fix: error causing crash in code service message history query

  • fix: message history max rows not respecting time

  • fix: allow setting engine type on code service creation

9.30.0 (2023-08-18)

  • feature: mTLS for device auth

  • enhancement: mqtt parsing updates for v5

  • fix: throttler for mqtt connections does not throttle