We are pleased to announce the release of v5.0.11 of the Dotnet TCP Client!
This release extends the auto-compatibility functionality introduced in v5.0.10 to allow it to work with Gossip Seeds as well as ClusterDNS. We hope that this will simplify the upgrade process from v5 to v20.
You can get the packages from nuget here: EventStore TCP Client
dotnet add package EventStore.Client --version 5.0.11
In the previous v5 release we mentioned that we wanted to make the upgrade from version 5 of EventStoreDB to version 20 less disruptive. As part of that, we introduced auto-compatibility mode for ClusterDNS discovery in the TCP client.
This release extends that feature to make it easier for more configurations.
First, auto-compatibility mode now works for gossip seeds. If auto-compatibility mode is enabled and a gossip seed is specified, the client will attempt to discover whether it should gossip over HTTP or HTTPS.
Second, auto-compatibility mode will also discover whether to use secure or insecure TCP based on the response from the server. This means that you won’t need to explicitly set UseSslConnection in the connection settings.
Please note that auto-compatibility mode does not enable Server Certificate Validation by default. As such, we recommend that you enable this explicitly in your connection settings
You can enable auto-compatibility mode with
“CompatibilityMode=auto”
in the connection string, or with
“.SetCompatibilityMode("auto")”
in the connection settings.
You can connect to a cluster running insecure v5, insecure v20, or secure v20 with the following configurations:
Connection String:
“ConnectTo=discover://{dns_address}:2113;TargetHost={dns_address};CompatibilityMode=auto;ValidateServer=true;”
“GossipSeeds={node1}:2113,{node2}:2113,{node3}:2113;CompatibilityMode=auto;ValidateServer=true;”
Connection Settings:
var connectionSettings = ConnectionSettings.Create()
.SetCompatibilityMode("auto");
var clusterSettings = ClusterSettings.Create()
.DiscoverClusterViaDns()
.SetClusterDns({dns_address})
.SetClusterGossipPort(2113);
var connectionSettings = ConnectionSettings.Create()
.SetGossipSeedEndPoints(gossipSeeds)
.SetCompatibilityMode("auto");
#2860 Extend auto-compatibility mode to gossip seeds configuration
Documentation for Dotnet TCP Client can be found here. Documentation for v20.10 and 21.2 of the client will be coming soon!
If you have any questions that aren't covered in these release notes or the docs, please feel free to reach out on discuss, GitHub or slack.
If you encounter any issues, please don’t hesitate to open an issue on GitHub if there isn’t one already.
Additionally, there is a fairly active Discuss channel, and an #eventstore channel on the DDD-CQRS-ES Slack community.