zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Shay Hazor (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ZOOKEEPER-2209) A .NET C# version of ZooKeeper client
Date Thu, 13 Oct 2016 20:37:20 GMT

    [ https://issues.apache.org/jira/browse/ZOOKEEPER-2209?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15573114#comment-15573114

Shay Hazor commented on ZOOKEEPER-2209:

[~ivan.kopcanski] I'm unsure how you've found your way here with the problem, but I'll try
to help anyway.
There's no C# client in the official ZooKeeper repo. I opened this issue in order to merge
my C# client, it wasn't approved because they didn't want to support it.
The nuget package you refer to is "ZooKeeperNet". It's built from https://github.com/ewhauser/zookeeper
and what made me write my own version of the client.

I'm the creator of the "ZooKeeperNetEx" package, it's way better than the other one - it has
been integrated with Microsoft Orleans and has been used in production for more than a year.
Now, regarding your problem, I don't have a dependency on log4net. I've implemented a simple
logging mechanism that writes to trace and to a file. In case you want to use log4net, no
problem... just set ZooKeeper.LogToFile=false and ZooKeeper.LogToTrace=false and ZooKeeper.CustomLogConsumer=YourLog4NetAdapter.
I hope I've been helpful.

> A .NET C# version of ZooKeeper client
> -------------------------------------
>                 Key: ZOOKEEPER-2209
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2209
>             Project: ZooKeeper
>          Issue Type: New Feature
>    Affects Versions: 3.4.6
>         Environment: .NET CoreCLR
>            Reporter: Shay Hazor
>            Assignee: Shay Hazor
>              Labels: .NET, CoreCLR, async, c#
>   Original Estimate: 0h
>  Remaining Estimate: 0h
> Inspired by the work of [~ewhauser] .
> I propose a C# Client that supports the current stable version of ZK 3.4.6.
> It was built by using static code conversion tools followed by manual editing and C#
implementations of java selector and other java constructs. 
> A great measure was taken to follow the logic of the java version. In fact, the code
is almost identical. Thus allowing easy evolution alongside the java version. 
> Main features:
> * fully .NET async, no explicit threads used
> * all relevant unit tests have been converted and passing consistently
> * Code is 100% CoreCLR compliant
> * [NuGet package|https://www.nuget.org/packages/ZooKeeperNetEx] is already integrated
in [Microsoft Project Orleans|https://github.com/dotnet/orleans] as the only open-source membership
> * [Nuget package for recipes|https://www.nuget.org/packages/ZooKeeperNetEx.Recipes]

This message was sent by Atlassian JIRA

View raw message