TIcket is Curator-68 If you have a direction as to how you'd like to proceed with the fix, I can probably help out if you like.
cheers Cam On Mon, Oct 21, 2013 at 11:34 AM, Cameron McKenzie <[email protected]>wrote: > I've had a bit more of a look into this and I think that the problem is in > the Watcher() implementation in the CuratorFrameworkImpl() constructor that > takes a Builder as an argument. When it processes a WatchedEvent it removes > the namespace from the event path > > unfixForNamespace(watchedEvent.getPath(); > > In the case where you've defined the namespace in the builder, this > removes the namespace prefix. In the case where you're using the > NamespaceFacade, the namespace of the CuratorFramework instance is null > (because it wasn't defined in the builder), so the namespace is not > stripped off the event. > > I guess this is a bug, but I'm not sure what the correct fix is? The > easiest fix is to just not strip the namespace in both cases. To strip the > namespace in the NamespaceFacade case will be quite tricky I presume > because you've got a single Watcher interface handling potentially acting > as the backend for multiple NamespaceFacade instances. > > I'll add a ticket to Jira. > cheers > Cam > > > On Mon, Oct 21, 2013 at 11:01 AM, Cameron McKenzie <[email protected] > > wrote: > >> Will do, I'll double check I'm not doing something stupid first though. >> cheers >> >> >> On Mon, Oct 21, 2013 at 11:00 AM, Jordan Zimmerman < >> [email protected]> wrote: >> >>> If I understand what you're saying that would be a bug. If you can, >>> please provide a test case and open an issue in Jira. >>> >>> -Jordan >>> >>> On Oct 20, 2013, at 4:52 PM, Cameron McKenzie <[email protected]> >>> wrote: >>> >>> > Not sure if I'm missing something, but it appears that there is a >>> difference in functionality between defining a namespace during using the >>> CuratorFrameworkFactory.builder().namespace("bla") method, and calling >>> usingNamespace("bla") on an instance of the CuratorFramework itself. >>> > >>> > Both seem to create nodes correctly in ZooKeeper, but the paths for >>> the events are inconsistent. If you using the Builder approach, the paths >>> in the events do not include the namespace. If you use the CuratorFramework >>> usingNamespace() approach, then the namespaces do appear in the event path. >>> > >>> > Is this by design? Or just a side effect? >>> > cheers >>> > Cam >>> > >>> > >>> >>> >> >
