Name | Description | Introduced in Version |
---|---|---|
CSCSMP - API Support To Compress Payload | The .Net API now supports end-to-end payload compression. Sessions can now be optionally configured to compress the payload of every message on a message-by-message basis. While enabling this feature severely impacts API performance for small messages and significantly impacts API performance for larger messages, it has a positive impact on Event Broker performance and message-spool usage. | 10.26.0 |
CSCSMP - Support For .NET 8 | This feature adds support for .NET 8.0 (LTS). | 10.26.0 |
.Net API - Available for ARM Linux | The .Net API now supports development and deployment on platforms that use ARM processors. | 10.24.0 |
.Net API - Available for Mac M-Series Processors | The .Net API now supports development and deployment on platforms that use MAC M-series processors. | 10.23.0 |
CCSMP, JavaRTO, .Net API - Update API License Agreement | We have simplified the API license text and clarified that distributing work containing the Solace APIs is allowed. | 10.23.0 |
CCSMP, JavaRTO, .Net API - Increase The Maximum Number Of SSLCerts | Applications can now load more than 64 SSL certificates using the API. | 10.23.0 |
.Net API - Provide Ability to NACK a Specific AD Message and Force Re-delivery | The Messaging API for .Net now supports message NACK. | 10.21.0 |
.Net API - Distributed Tracing - Context Propagation | Context Propagation enables adding and extracting tracing metadata attached to events published and received by the Solace Messaging API for .Net. | 10.21.0 |
.Net API - Support Alpine Linux | The API now supports Alpine Linux, allowing developers to build and deploy applications using the API on this platform. | 10.21.0 |
.Net API - Support for Partitioned Queues | This enhancement adds support for Partitioned Queues to the API. Partitioned Queues expand PubSub+ to provide deterministic, ordered, and non-exclusive message delivery for customers to scale the number of consumers when publishing ordered datasets. The ordered datasets are keyed to ensure all events in the dataset are sent to the same consumer without mis-ordering events. This feature requires PubSub+ Event Broker support. Support for this feature is planned to be introduced to the Event Broker around April 30, 2023 in release 10.4.0. | 10.20.0 |
.Net - Add Way to Update Oauth Token on Reconnection | This feature allows an application to automatically update the OAuth token without the need to create a new session the next time the API tries to reconnect. | 10.19.0 |
Add Way to Update Oauth Token on Reconnection | This feature allows an application to automatically update the OAuth token without the need to create a new session the next time the API tries to reconnect. | 10.19.0 |
Support New Major Version of .Net 6.0 | This feature adds support for .NET 6.0 (LTS). | 10.17.0 |
Update the Version of zlib Used by C API | The zlib library inside Solace PubSub+ Messaging API for C/JRTO/.Net API has been updated to version 1.2.11. | 10.16.0 |
OAuth/OIDC Support in Messaging API for CCSMP/.NET/Java RTO | OAuth / OpenID Connect has been added as a method of authenticating and authorizing clients connecting to the PubSub+ Event Broker using the SMF protocol. Clients using Solace APIs will be able to present a token as a credential during client login. This enables clients to integrate with modern identity and access management systems. | 10.16.0 |
Support New Major Version of .Net 5.0 | Added support for major version upgrade of .NET to 5.x. Removed BinaryFormatter.Serialize() as this was deprecated and marked as "unsafe" by .NET. | 10.15.0 |
Increase the Maximum Number of Messages in a Transaction | This feature increases the transaction scaling limits to allow up to 20,000 messages (consume plus publish) in a single transaction. The previous limit was 256 messages. To use this feature, you must upgrade your PubSub+ Event Brokers to Release 9.8.1 or later. This feature is a Controlled Availability feature. Solace recommends that before you enable this feature on your event broker, contact Solace to review your use case. Solace will work with you to verify that the feature is suitable for production use in your environment. | 10.13.0 |
Reference Number | Description | Resolved in Version |
---|---|---|
SOL-98839 | Attempting to create one client per Context with more than 323 clients can result in application hanging in C and .NET API. | 10.25.0 |
SOL-75016 | The port number of local connection information from the INFO level SDK log is incorrect. Workaround: Convert it to host order. For example, the port number 50736 (0xc630) is shown as 12486 (0x30c6). | 10.19.0 |
SOL-71801 | In very rare cases, when re-connecting to a new router, the API may fall out of sync with the broker in respect to the messages published within a local transaction. When this occurs, the API will not recover. | 10.19.0 |
SOL-78378 | When a flow is created within a transacted session, it is possible for messages to be delivered to the application before the flow-create thread returns control to the application. Internally, the flow is not completely initialized, and those messages will not be included in a subsequent commit(), causing redelivery. Note: This issue only occurs on transacted sessions, not on flows on non-transacted sessions. Workaround: Create transacted flows in 'stopped' state until this defect is fixed. | 10.19.0 |
SOL-78982 | If commits for multiple transacted sessions are outstanding and one of the transactions rolls back the broker may incorrectly report that it succeeded. | 10.19.0 |
SOL-80691 | Setting CONTEXT_THREAD_AFFINITY does not affect thread pinning. This issue was introduced in Messaging API for C version 7.23.0 and Messaging API for JavaRTO version 10.1.0. | 10.19.0 |
SOL-80752 | In rare cases, during destruction of failed sessions, the API may unexpectedly exit. | 10.19.0 |
SOL-75179 | Calling solClient_session_createFlow may time out in blocking mode when the system load is too high. | 10.19.0 |
SOL-61365 | The API leaks the CorrelationKey object when the batch send function(ISession.Send(IMessage\[], ...)) fails to send any messages in non-blocking mode. | 10.17.0 |
SOL-59595 | Due to a translation error between the .NET API and the underlying C API, TransactedSessionProperties.OperationTimeoutInMsecs() will display a warning and not adjust the timeout. Workaround: Use TransactedSessionProperties.SetCCSMPProperty("TRANSACTEDSESSION_REQUESTREPLY_TIMEOUT_MS", "10000"); "10000" is a string that contains the desired timeout. | 10.16.0 |
SOL-48297 | The C API has a potential memory leak when making a TLS connection. If the socket-open or socket-connect fails due to bad parameters in the HOST property, then a TLS-allocated memory block is not released. | 10.13.0 |
SOL-44717 | Modifying the logging level of the .NET API after initializing the API does not modify the logging level of all API components. | 10.12.0 |
SOL-45065 | The API can occasionally throw a segmentation fault when running on iOS and with SSL enabled. This is due to a race condition between the Solace context thread performing operations and OpenSSL freeing its global static pointers in its "atexit" handler. | 10.12.0 |
SOL-46604 | The .NET API's Subscribe and Unsubscribe methods for both Sessions and Flows should be thread safe but are not. | 10.12.0 |
Reference Number | Description | Introduced in Version |
---|---|---|
SOL-91687 | The C, .Net and Python APIs no longer bundles OpenSSL libraries on Linux platforms. For all other platforms, the bundled OpenSSL libraries have been updated to OpenSSL 3.0. For more information, refer to the Supported Environments page in our customer documentation. | 10.25.0 |
SOL-95357 | The API has been updated to decode "400 Invalid Queue or Topic Endpoint Durability" broker response. For more information, see: | 10.22.0 |
SOL-66696 | The API has been updated to decode all broker response codes as of broker version 10.1.1. For more information, see: | 10.18.0 |
SOL-57871 | Classes that extend BaseProperties (and its children) and relied upon the base class to perform a deep-copy now need to override the .clone() method. This change was introduced to follow BinarySerializer security best-practices. For more information, see: https://docs.microsoft.com/en-us/dotnet/standard/serialization/binaryformatter-security-guide. | 10.15.0 |
SOL-50410 | Solace Cut-Through Persistence (CTP), also known as Cut-Through Messaging, has been deprecated with plans to remove this functionality from all Solace Products starting May 31, 2022. Please verify that your organization does not use CTP by typing "show message-spools stats" in the command line interface of your PubSub+ event broker and check that "messages delivered cut-through = 0". If your organization is using CTP, please contact Solace at support@solace.com. | 10.14.0 |
SOL-45498 | The format of reply-to topics has changed. The reply-to topic used by the API's request/reply helper methods used to be of the form: #P2P/v:routerName/clientUsernameHash/clientName/# The trailing # has been replaced with an underscore _ such that the topic is now of the form: #P2P/v:routerName/clientUsernameHash/clientName/_ The suffix of a reply-to topic set with the setReplyToSuffix() method is also now prefixed with the underscore(_) character. | 10.12.0 |
Reference Number | Description |
---|---|
SOL-26213 | Deliver-to-one override does not work when subscribing on behalf of or on endpoints. Original bug: Bug 67409 |