Skip to content

Releases: hazelcast/hazelcast-csharp-client

Hazelcast .NET Client 5.7.0

Choose a tag to compare

@emreyigit emreyigit released this 20 May 13:49

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.7.0 release.

This version is fully backward-compatible with all 5.x versions.

Refer to the 5.7.0 milestone for details on all issues and PRs that were involved in this release. This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.7.0 release.

Enhancements

  • This cilent release delivers significant performance gains across all operations through three pipeline improvements. Benchmark results against a 3-node cluster show PUT throughput up 2.5–3.4× and p99 PUT latency down 30–65%; GET throughput up 27–56% and p99 GET latency down 30–38%.

    • Improved serialization performance through byte buffer pooling: Byte buffers are now pooled via ArrayPool<byte> rather than allocated per operation, reducing hot-path heap allocations to near zero. #1032
    • Improved network write performance through buffer consolidation: Frame header and body are now consolidated into a single WriteAsync call, eliminating a redundant memory copy and halving send semaphore hold time per message. #1037
    • Improved receive performance through inline pipe scheduling: The pipe reader now runs inline on the IO thread rather than being posted to the thread pool, removing a scheduling hop on every inbound message. For workloads with large payloads or expensive deserialization, the new PipeReaderScheduler property on SocketOptions can be set to PipeScheduler.ThreadPool to offload receive processing off the IO thread. #1041
  • Added support for Map.UpdateTimeToLive #997

Hazelcast .NET Client v5.6.0

Choose a tag to compare

@g-donev g-donev released this 05 Dec 15:40

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.6.0 release.

This version is fully backward-compatible with all 5.x versions.

The Hazelcast .NET Client v5.6.0 requires any of the following runtimes: .NET 4.6.2, 4.8, 8, or 9, and is fully compatible with .NET 10.

Refer to the 5.6.0 milestone for details on all issues and PRs that were involved in this release.

New Features

Breaking Changes

  • We have ended support for .NET 6, following Microsoft’s official end of support on November 12, 2024.
  • If you run the netstandard2.0 target on .NET 10, you may encounter conflicts with the transient Microsoft.Bcl.Memory dependency. Override it in your project or upgrade to netstandard2.1 or later. For more information see #1007

Thanks

To community user @thompson-tomo for helping to optimize dependencies.

Hazelcast .NET Client v5.5.1

Choose a tag to compare

@emreyigit emreyigit released this 26 Jun 15:20

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.5.1 release.

This version is a patch release and therefore is fully backward-compatible with all 5.x and 4.x versions.

Refer to the 5.5.1 milestone for details on all issues and PRs that were involved in this release.

Enhancements

  • Cosmetic fix on RoutingModes enum values for Management Center.
  • Fix missing patch version of the client in Management Center.

Hazelcast .NET Client v5.5.0

Choose a tag to compare

@emreyigit emreyigit released this 14 Oct 12:43

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.5.0 release.

This version is a minor release and therefore is fully backward-compatible with all 5.x and 4.x versions.

Refer to the 5.5 milestone for details on all issues and PRs that were involved in this release.

New Features & Enhancements

Breaking Changes

Known Issues

  • NA

Hazelcast .NET Client v5.4.0

Choose a tag to compare

@emreyigit emreyigit released this 21 Jun 07:31

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.4.0 release.

This version is a minor release and therefore is fully backward-compatible with all 5.x and 4.x versions.

Refer to the 5.4.0 milestone for details on all issues and PRs that were involved in this release.

New Features & Enhancements

  • CPMap Support #866
  • Dynamic Configuration for Map and Ring Buffer #865
  • CP Count Down Latch Support #870
  • CP Semaphore Support #867
  • .NET 8 Support

Breaking Changes

  • Drop Serialization Support for BinaryFormatter #886

Fixes

  • Don't try old members after failover happened #891
  • Compact Serialization: UnknownSchemaException when using Paging Predicates on getEntriesAsync, etc. #868

Known Issues

  • NA

Hazelcast .NET Client v5.3.1

Choose a tag to compare

@zpqrtbnk zpqrtbnk released this 10 Oct 08:06

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.3.1 release.

This version is a minor release and therefore is fully backward-compatible with all 5.x and 4.x versions.

Refer to the 5.3.1 milestone for details on all issues and PRs that were involved in this release.

This Release

There are no features, enhancements nor fixes in this release. In fact, this release is absolutely identical to v5.3.0, but for one change: it removes the dependency on the DotNetZip package.

The client used DotNetZip for a special corner-case, where it needed to compress metrics in a Java-supported way, in order to send them back to the cluster for Management Center to display them. A plain "zlib" compression was indeed necessary, but not available in stock .NET. However, DotNetZip makes use of Random in some places, in a way that triggers some threat-detection tools, as Random is not safe to use for anything related to security and cryptography. As a consequence, DotNetZip has been flagged with MEDIUM security issues that can be blocking for some high-security users of the .NET client.

We have therefore removed the DotNetZip dependency as follows:

  • As of .NET 6, the plain "zlib" compression is available as part of the .NET stock libraries. For .NET 6+ versions of the client, we now rely on stock .NET code.
  • For anything pre-.NET 6, including .NET Framework, we have embedded into the .NET client the very minimal parts of DotNetZip that the client requires. This excludes any usage of Random or any security- and cryptography-related code. The embedded code has been carefully reviewed by ourselves.

Hazelcast .NET Client v5.3.0

Choose a tag to compare

@emreyigit emreyigit released this 23 Jun 18:06

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.3.0 release.

This version is a minor release and therefore is fully backward-compatible with all 5.x and 4.x versions.

Refer to the 5.3.0 milestone for details on all issues and PRs that were involved in this release.

New Features & Enhancements

  • Reliable Topic #825
  • TPC Beta Support - a new performant way to connect Hazelcast #830
  • Session State Provider for ISession interface in Hazelcast.Net.Cache #786
  • Partition Awareness for SQL Queries #798
  • Support for TLS 1.3 #811
  • Drop support for .NET Core 3.1 and .NET 5
  • Added LINQ Provider Hazelcast.Net.Linq.Async #837
  • Added async and sync Reconnect Modes

Please, visit the documentation for new features from here.

Fixes

  • Fix Invalid Server Name Information (SNI) in SSL/TLS Client Hello payload #800

Known Issues

  • Serialization Error on Nested Compact Generic Record #816

Hazelcast .NET Client v5.2.2

Choose a tag to compare

@zpqrtbnk zpqrtbnk released this 30 May 09:20

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.2.2 release.

This version is a patch release and is fully backward-compatible with all 5.x and 4.x versions.

Refer to the 5.2.2 milestone for details on all issues and PRs that were involved in this release.

Enhancements

  • Add missing HazelcastClient.GetDistributedObjectsAsync API.
  • Update documentation in various places, especially the "migrating from v3" page
  • Add a page to document common pitfalls when migrating from synchronous to asynchronous code
  • Make our code more tolerant to synchronous + asynchronous mixed code patterns

Fixes

  • Client can hang in mixed sync/async code patterns ( #818 )
  • GetDistributedObjects is missing ( #799 )
  • Hazelcast.Net.DependencyInjection package has issues ( #823 )

Known Issues

none

Hazelcast .NET Client v5.2.1

Choose a tag to compare

@zpqrtbnk zpqrtbnk released this 01 Apr 16:30

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.2.1 release.

This version is a minor release and therefore is fully backward-compatible with all 5.x and 4.x versions.

When version 5.2.0 was released, the various NuGet packages were built in two different batches, ending with different signatures, and some packages being incompatible with others.

This release is a re-release of version 5.2.0 which simply rebuilds the NuGet packages so they happily all work together.

The codebase has not change in any way.

Hazelcast .NET Client v5.2.0

Choose a tag to compare

@zpqrtbnk zpqrtbnk released this 12 Feb 16:11

This document describes the new features, enhancements, and fixed issues for the Hazelcast .NET Client v5.2.0 release.

This version is a minor release and therefore is fully backward-compatible with all 5.x and 4.x versions.

Refer to the 5.2.0 milestone for details on all issues and PRs that were involved in this release.

New Features & Enhancements

NOTE: Linq is added as a BETA feature. We believe our implementation to be stable and robust, but it is a newly introduced, rather important feature. We cannot totally rule out issues. Users are recommended to try and experiment with Linq now, but wait for version 5.3 for a production usage.

Fixes

  • Unisocket (non-smart-routing) mode is known to be unreliable ( #595 )
  • Client hangs with infinite memory leak when misconfigured ( #530 )
  • Cloud connection issue with SSL ( #544 )
  • Management Center stats and metrics issues ( #539 )
  • Minor issues (see milestone)

Thanks

To community user @ph33rtehgd for testing the Compact Serialization and reporting issues.

Known Issues

none