[jboss-user] [JBoss Cache: Core Edition] - Re: Remoting On Existing POJO Channel

kblanken do-not-reply at jboss.com
Thu May 15 13:52:21 EDT 2008


My JGroups version is 2.4.2. So far I haven't found anything on their site, but I'm still searching.

The Multiplexer doesn't seem to be the reason anyway. I've narrowed down the problem to the following code:
// Builds a properties String
  | JGroupsProperties props = new JGroupsProperties();
  | 
  | JChannel channel = new JChannel(props.getProps());
  | cache = new TreeCache(channel);
  | cache.setCacheMode(TreeCache.REPL_SYNC);
  | 
  | // Uncomment to prevent wait lock:
  | // channel.connect(cacheName);
  | // View view = channel.getView();
  | // if (cache.getMembers()==null || cache.getMembers().size()==0) {
  | //   cache.getMembers().addAll(view.getMembers());
  | // }
  | 
  | cache.startService();

This code hangs with the stacktrace posted earlier. The viewChanged method is never called.
By enabling the commented out code a different behaviour is triggered in TreeCache.getCoordinator(), bypassing the members.wait(). This is probably a very crude workaround I'd rather not keep as a final solution.

The wait seems to have been introduced in http://jira.jboss.com/jira/browse/JBCACHE-507. 
My system is a Windows XP machine, UDP loopback is enabled.

I see the original error might indeed lie in JGroups, which doesn't pass down/up the view change event generated by the first member. Can you confirm this? Where is the join event triggered in TreeCache?

Any help is really appreciated. I'll gladly run some tests if you need me to.

Regards,

Kai

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4151176#4151176

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4151176



More information about the jboss-user mailing list