Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Zookeeper >> mail # user >> Zookeeper protocol weirdness and pure Python kazoo client


Copy link to this message
-
Re: Zookeeper protocol weirdness and pure Python kazoo client
On 30 August 2012 22:04, Ben Bangert <[EMAIL PROTECTED]> wrote:

> On Aug 30, 2012, at 9:00 PM, Ben Bangert <[EMAIL PROTECTED]> wrote:
>
> > zkpython (Python binding to C lib):
> > - Approx. 1500 lines of C (Not including the C lib itself, which is
> another ~ 8000 lines of code)
> > - Anyone that knows and wants to read the C library *and* Python *and*
> the Python C binding tricks can trouble-shoot and contribute. And maybe the
> patches will actually be accepted and incorporated at some point...
> > - Only usable with CPython
> > - Worst case... Python segfaults
> >
> > I really don't know many (hardly any) Python developers that know C well
> enough to debug it or dive into it. If their only Zookeeper experience is
> marred by bugs in the 'black box' of C, they'll move on to something else.
> Which saddens me cause I think Zookeeper is pretty awesome.
>
> Wanted to update this cause I think this might have come off as harsh. I
> greatly appreciate the Python C binding work, without it I wouldn't have
> started using Zookeeper. I definitely think we can do better to make it
> more enjoyable to use Zookeeper from Python though.
>
>
Ben -

I took a look, and kazoo seems really promising. Thanks for building it!
Speaking as the guy who wrote 95% of the current Python bindings, I'll be
delighted if they can be superseded by a better implementation.

I just want to reiterate that everyone that works on ZooKeeper is a
volunteer, and I believe that none of the active committers are paid to
work on ZooKeeper full-time. That's not to completely abrogate
responsibility - the zkpython JIRAs need a good clean-up and have done for
a long time - but to make the broader point that the very best way to see
the change that you want made is to engage with and become an active member
of the community. Apache is all about community.

That means filing JIRAs, submitting your changes as patches (generating C
documentation would be a great patch) and badgering community members to
review (and committers, eventually, to commit). It's not that 'we' don't
care about the C client, it's that no-one is championing it enough at the
moment. Anyone can become that champion, and they are strongly encouraged
to do so.

I'd love to see kazoo get contributed back to Apache. Is that something
you're interested in doing? I'm not sure we can wholesale replace the
extant Python bindings because I know we have users that depend upon them -
but that's a solvable problem, it's no great pain to include both in a
release.

cheers,
Henry

> - Ben
--
Henry Robinson
Software Engineer
Cloudera
415-994-6679