|
From: Bartlomiej N. <ba...@ya...> - 2008-04-25 17:03:40
|
Ben,
I think the best approach would be to support permanent watches, a
feature which has been asked for since the very beginning...
Not only would it cease the endless discussion of naming, but it would
also provide a powerful feature ;-)
Just a thought ;-)
B.
-----Original Message-----
From: zoo...@li...
[mailto:zoo...@li...] On Behalf Of
Benjamin Reed
Sent: Friday, April 25, 2008 8:48 AM
To: zoo...@li...
Subject: Re: [Zookeeper-user] [Bug?] Notification not guaranteed
Naming and the semantics it implies can be an endless argument. Unless
we call
it a one time trigger I think people will think of SQL triggers which
are not
one time. (I'm not saying that watch is any better.)
I agree about the java doc clarifications. I've been working on it since
Ted
brought it up, but I've been side tracked by the session loss bug. I'm
hoping
to finish up today. I'll make sure the javadoc emphasizes the way
watches
work.
ben
On Friday 25 April 2008 00:14:11 Patrick Hunt wrote:
> Benjamin Reed wrote:
> > This is really a key point for new users to understand, so any
pointers
> > on how we can clarify that page would be very helpful!
>
> Part of the issue may be the naming itself. For whatever reason I
> associate "watch" with something long lived - not a "one time
> notification" which I would associate more naturally with "trigger".
>
> I jumped in right way and started using the java client/server. The
java
> client javadoc in particular is not clear about watches being "one
time
> notifications". Would def help to fix the javadoc on this point.
>
> Patrick
>
> > ----- Original Message ----
> > From: Stefan Groschupf <sg...@10...>
> > To: zoo...@li...
> > Sent: Thursday, April 24, 2008 10:19:16 PM
> > Subject: [Zookeeper-user] [Bug?] Notification not guaranteed
> >
> > Hi there,
> > as far I understand notification is guaranteed for e.g. child
creation.
> > However I have a test that shows that randomly I do not get all
> > notification I do expect.
> > I basically create 10 child in /folder but only get 8 or 9
> > notifications back.
> > However in case I add a Thread.sleep(50); between my child znode
> > creation I always get 10 notifications.
> >
> > Is that a bug or an optimization, e.g. getting one notification for
> > two new sub znode creations?
> > Thanks for any hints.
> > Stefan
> >
> > My code looks like this:
> >
> > TestMethod:
> >
> > public void testNotifications() throws Exception {
> > KattaConfiguration conf = new KattaConfiguration();
> > Server server = new Server(conf);
> > ZKClient client = new ZKClient(conf);
> > MyListener listener = new MyListener();
> > String katta = "/katta";
> > if (client.exists(katta)) {
> > client.deleteRecursiv(katta);
> > }
> > client.create(katta);
> > client.subscribeChildChanges(katta, listener);
> > for (int i = 0; i < 10; i++) {
> > client.create(katta + "/" + i);
> > // Thread.sleep(50);
> > }
> > Thread.sleep(1000);
> > assertEquals(10, listener._counter);
> > server.shutdown();
> > }
> >
> > Watcher process Method:
> >
> > public void process(WatcherEvent event) {
> > synchronized (_mutex) {
> > String path = event.getPath();
> > if (event.getType() ==
> > Watcher.Event.EventNodeChildrenChanged) {
> > HashSet<IZKEventListener> listeners =
> > _childListener.get(path);
> > if (listeners != null) {
> > for (IZKEventListener listener : listeners) {
> > listener.process(event);
> > }
> > // re subscribe to event.
> > try {
> > _zk.getChildren(event.getPath(), true);
> > } catch (Exception e) {
> > for (IZKEventListener listener : listeners)
{
> > removeListener(path, listener);
> > }
> > Logger.warn("unable to re subscribe to
child
> > change notification", e);
> > }
> > }
> > }
> > }
> > }
> >
> >
> >
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > 101tec Inc.
> > Menlo Park, California, USA
> > http://www.101tec.com
> >
> >
> >
> >
------------------------------------------------------------------------
-
> > This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
> > Don't miss this year's exciting event. There's still time to save
$100.
> > Use priority code J8TL2D2.
> >
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/j
a
> >vaone _______________________________________________
> > Zookeeper-user mailing list
> > Zoo...@li...
> > https://lists.sourceforge.net/lists/listinfo/zookeeper-user
> >
> >
> >
------------------------------------------------------------------------
-
> > This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
> > Don't miss this year's exciting event. There's still time to save
$100.
> > Use priority code J8TL2D2.
> >
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/j
a
> >vaone _______________________________________________
> > Zookeeper-user mailing list
> > Zoo...@li...
> > https://lists.sourceforge.net/lists/listinfo/zookeeper-user
>
>
------------------------------------------------------------------------
-
> This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
> Don't miss this year's exciting event. There's still time to save
$100.
> Use priority code J8TL2D2.
>
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/j
ava
>one _______________________________________________
> Zookeeper-user mailing list
> Zoo...@li...
> https://lists.sourceforge.net/lists/listinfo/zookeeper-user
------------------------------------------------------------------------
-
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/j
avaone
_______________________________________________
Zookeeper-user mailing list
Zoo...@li...
https://lists.sourceforge.net/lists/listinfo/zookeeper-user
|