| Hi Scott, 
 I tracked down the cause of the problem.  Inside RemoteServiceEndpointDescriptionImpl.equals() it compares the service id location and remote service id for equality.  In my case since I'm running the two hosts on the same machine, the locations are equal as the values are the IP address of the machine, and the service ids are both 0.  This causes the DiscoveredServiceTrackerImpl.isValidDescription() to return false and the endpoint is not dispatched in the DiscoveredServiceTrackerImpl.serviceChanged().  It's not clear if the root cause is that the location values are only the IP address or if the equals() should compare the endpointId as the endpoint ids are unique. 
 Bryan 
 
 On Oct 5, 2010, at 11:21 AM, Scott Lewis wrote: 
_______________________________________________
    Hi Bryan, 
    I need to let you/all know...I am very occupied right now and so
    can't work on this immediately as much as I would like.  
     
    One thing that might help diagnose this Bryan...could you describe a
    few things?...e.g. what remote services are on exposed via hosts,
    what is desired/expected to happen, what is the timing of the remote
    service registrations (i.e. what order do things happen in), and
    anything else about this use case you think is relevant.
     
    Also...do you think you could use the Logging*DiscoveryListener, and
    the Logging*DistributionListeners and have things produce the output
    these listeners?
     
    Thanks,
     
    Scott
    
    
    
     
    On 10/5/2010 8:29 AM, Bryan Hunt wrote:
     Hi Scott,
      
 I added in the listeners as suggested - results below.  It
        looks like the client discovers the second proxy, but never
        retrieves the second proxy.  Do you have a recommended
        breakpoint from this datapoint? 
 Bryan 
 
 
 
        Output from client: 
 ZooDiscovery> Service Discovered: Oct 5, 2010 10:18:37
          AM.
          ServiceInfo[uri=9.41.188.106;id=ServiceID[type=ServiceTypeID[typeName=_osgiservices._tcp.default._iana];location=9.41.188.106;full=_osgiservices._tcp.default._iana@9.41.188.106 ];priority=0;weight=0;props=ServiceProperties[{com.ibm.hdwb.jobs.common.monitor.port=9020,
          ecf.sp.ect=ecf.generic.server,
          com.ibm.hdwb.jobs.common.monitor.command=/afs/awd/projects/cte/tools/hdwb/prod/llmonitor/monitor.ksh,
          component.id=22,
          com.ibm.hdwb.jobs.common.monitor.host=tritium.austin.ibm.com,
          component.name=com.ibm.hdwb.ll.server.job_queue_service,
          ll_submit_command=,
          ecf.rsvc.id=org.eclipse.ecf.discovery.ServiceProperties$ByteArrayWrapper@313a313a,
          ecf.sp.cid=org.eclipse.ecf.discovery.ServiceProperties$ByteArrayWrapper@2e9f2e9f,
          com.ibm.hdwb.jobs.common.pool.uuid=4ab60c63-c188-48e2-9db5-64d21063b01f,
          com.ibm.hdwb.jobs.common.monitor.submitter=bhunt,
          service.factoryPid=com.ibm.hdwb.ll.server.job_queue_service,
          service.pid=com.ibm.hdwb.ll.server.job_queue_service-1286291916914-0,
          com.ibm.hdwb.jobs.common.monitor.restlet.port=8080,
          osgi.remote.service.interfaces=com.ibm.hdwb.jobs.common.IJobQueueService,
          ecf.rsvc.ns=ecf.namespace.generic.remoteservice,
          ecf.sp.cns=org.eclipse.ecf.core.identity.StringID,
          com.ibm.hdwb.jobs.common.monitor.restlet.host=tritium.austin.ibm.com}]]Proxy discovery discovered: null Proxy distribution retrieving: 0 Proxy distribution registering:
org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://tritium.austin.ibm.com:30001/server];containerRelativeID=0] Proxy distribution registered:
org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://tritium.austin.ibm.com:30001/server];containerRelativeID=0] 
 
 ZooDiscovery> Service Discovered: Oct 5, 2010 10:20:16
          AM.
          ServiceInfo[uri=9.41.188.106;id=ServiceID[type=ServiceTypeID[typeName=_osgiservices._tcp.default._iana];location=9.41.188.106;full=_osgiservices._tcp.default._iana@9.41.188.106 ];priority=0;weight=0;props=ServiceProperties[{com.ibm.hdwb.jobs.common.monitor.port=9020,
          ecf.sp.ect=ecf.generic.server,
          com.ibm.hdwb.jobs.common.monitor.command=/afs/awd/projects/cte/tools/hdwb/prod/llmonitor/monitor.ksh,
          component.id=22,
          com.ibm.hdwb.jobs.common.monitor.host=tritium.austin.ibm.com,
          component.name=com.ibm.hdwb.ll.server.job_queue_service,
          ll_submit_command=,
          ecf.rsvc.id=org.eclipse.ecf.discovery.ServiceProperties$ByteArrayWrapper@2fc12fc1,
          ecf.sp.cid=org.eclipse.ecf.discovery.ServiceProperties$ByteArrayWrapper@2e662e66,
          com.ibm.hdwb.jobs.common.pool.uuid=4ab60c63-c188-48e2-9db5-64d21063b01f,
          com.ibm.hdwb.jobs.common.monitor.submitter=bhunt,
          service.factoryPid=com.ibm.hdwb.ll.server.job_queue_service,
          service.pid=com.ibm.hdwb.ll.server.job_queue_service-1286292015780-0,
          com.ibm.hdwb.jobs.common.monitor.restlet.port=8080,
          osgi.remote.service.interfaces=com.ibm.hdwb.jobs.common.IJobQueueService,
          ecf.rsvc.ns=ecf.namespace.generic.remoteservice,
          ecf.sp.cns=org.eclipse.ecf.core.identity.StringID,
          com.ibm.hdwb.jobs.common.monitor.restlet.host=tritium.austin.ibm.com}]]Proxy discovery discovered: null 
 
 
 
          Output from server 1: 
 Host discovery publish: svc_X3RtmpkBZ991jRm1KJBed4xNURA= ZooDiscovery> Service Published: Oct 5, 2010 10:18:37
            AM.
            ServiceInfo[uri=osgiservices://9.41.188.106:30001/svc_X3RtmpkBZ991jRm1KJBed4xNURA=;id=ServiceID[type=ServiceTypeID[typeName=_osgiservices._tcp.default._iana];location=osgiservices://9.41.188.106:30001/svc_X3RtmpkBZ991jRm1KJBed4xNURA=;full=_osgiservices._tcp.default._iana@osgiservices://9.41.188.106:30001/svc_X3RtmpkBZ991jRm1KJBed4xNURA= ];priority=0;weight=0;props=ServiceProperties[{com.ibm.hdwb.jobs.common.monitor.port=9020,
            ecf.sp.ect=ecf.generic.server,
            com.ibm.hdwb.jobs.common.monitor.command=/afs/awd/projects/cte/tools/hdwb/prod/llmonitor/monitor.ksh,
            component.id=22,
            com.ibm.hdwb.jobs.common.monitor.host=tritium.austin.ibm.com,
            component.name=com.ibm.hdwb.ll.server.job_queue_service,
            ecf.rsvc.id=org.eclipse.ecf.discovery.ServiceProperties$ByteArrayWrapper@5ad05ad0,
            ll_submit_command=,
            ecf.sp.cid=org.eclipse.ecf.discovery.ServiceProperties$ByteArrayWrapper@27412741,
            com.ibm.hdwb.jobs.common.pool.uuid=4ab60c63-c188-48e2-9db5-64d21063b01f,
            com.ibm.hdwb.jobs.common.monitor.submitter=bhunt,
            service.factoryPid=com.ibm.hdwb.ll.server.job_queue_service,
            service.pid=com.ibm.hdwb.ll.server.job_queue_service-1286291916914-0,
            com.ibm.hdwb.jobs.common.monitor.restlet.port=8080,
            osgi.remote.service.interfaces=com.ibm.hdwb.jobs.common.IJobQueueService,
            ecf.rsvc.ns=ecf.namespace.generic.remoteservice,
            ecf.sp.cns=org.eclipse.ecf.core.identity.StringID,
            com.ibm.hdwb.jobs.common.monitor.restlet.host=tritium.austin.ibm.com}]]Proxy discovery discovered:
            svc_X3RtmpkBZ991jRm1KJBed4xNURA= Host distribution registered:
org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://tritium.austin.ibm.com:30001/server];containerRelativeID=0] Proxy distribution retrieving: 0 Proxy distribution registering:
org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://tritium.austin.ibm.com:30001/server];containerRelativeID=0] Proxy distribution registered:
org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://tritium.austin.ibm.com:30001/server];containerRelativeID=0] 
 
 Output from server 2: 
 Host discovery publish: svc_VFGjr0XPp/FyTwDrcYMaYDdETwY= ZooDiscovery> Service Published: Oct 5, 2010 10:20:16
            AM.
            ServiceInfo[uri=osgiservices://9.41.188.106:30002/svc_VFGjr0XPp/FyTwDrcYMaYDdETwY=;id=ServiceID[type=ServiceTypeID[typeName=_osgiservices._tcp.default._iana];location=osgiservices://9.41.188.106:30002/svc_VFGjr0XPp/FyTwDrcYMaYDdETwY=;full=_osgiservices._tcp.default._iana@osgiservices://9.41.188.106:30002/svc_VFGjr0XPp/FyTwDrcYMaYDdETwY= ];priority=0;weight=0;props=ServiceProperties[{com.ibm.hdwb.jobs.common.monitor.port=9020,
            ecf.sp.ect=ecf.generic.server,
            com.ibm.hdwb.jobs.common.monitor.command=/afs/awd/projects/cte/tools/hdwb/prod/llmonitor/monitor.ksh,
            component.id=22,
            com.ibm.hdwb.jobs.common.monitor.host=tritium.austin.ibm.com,
            component.name=com.ibm.hdwb.ll.server.job_queue_service,
            ecf.rsvc.id=org.eclipse.ecf.discovery.ServiceProperties$ByteArrayWrapper@1c701c70,
            ll_submit_command=,
            ecf.sp.cid=org.eclipse.ecf.discovery.ServiceProperties$ByteArrayWrapper@e090e09,
            com.ibm.hdwb.jobs.common.pool.uuid=4ab60c63-c188-48e2-9db5-64d21063b01f,
            com.ibm.hdwb.jobs.common.monitor.submitter=bhunt,
            service.factoryPid=com.ibm.hdwb.ll.server.job_queue_service,
            service.pid=com.ibm.hdwb.ll.server.job_queue_service-1286292015780-0,
            com.ibm.hdwb.jobs.common.monitor.restlet.port=8080,
            osgi.remote.service.interfaces=com.ibm.hdwb.jobs.common.IJobQueueService,
            ecf.rsvc.ns=ecf.namespace.generic.remoteservice,
            ecf.sp.cns=org.eclipse.ecf.core.identity.StringID,
            com.ibm.hdwb.jobs.common.monitor.restlet.host=tritium.austin.ibm.com}]]Proxy discovery discovered:
            svc_VFGjr0XPp/FyTwDrcYMaYDdETwY= Host distribution registered:
org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://tritium.austin.ibm.com:30002/server];containerRelativeID=0] Proxy distribution retrieving: 0 Proxy distribution registering:
org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://tritium.austin.ibm.com:30002/server];containerRelativeID=0] Proxy distribution registered:
org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://tritium.austin.ibm.com:30002/server];containerRelativeID=0] 
 
 
 
        _______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ecf-dev
          On Oct 4, 2010, at 1:00 PM, Scott Lewis wrote: 
            _______________________________________________ Hi Bryan, 
              In addition to breakpoints, it might be useful to use
              these listeners:
               
              (on host side) 
org.eclipse.ecf.osgi.services.discovery.IHostDiscoveryListener 
org.eclipse.ecf.osgi.services.distribution.IHostDistributionListener
               
              (on consumer side) 
org.eclipse.ecf.osgi.services.discovery.IProxyDiscoveryListener 
org.eclipse.ecf.osgi.services.distribution.IProxyDistributionListener
               
              Each of these use the OSGi whiteboard pattern...i.e.
              create an implementer of these interfaces and register
              them as OSGi services.  Then when things happen in the
              discovery and/or distribution implementations, the
              appropriate methods are called back.
               
              Examples of usage exist in the hello examples projects
              (i.e. in org.eclipse.ecf.examples.remoteservices.hello.host
                and org.eclipse.ecf.examples.remoteservices.hello.consumer)...i.e.
              in the HelloHostApplication and HelloConsumerApplication.
               
              Scott
               
              On 10/4/2010 10:07 AM, Bryan Hunt wrote:
               
                Wim,
I need to start debugging the problem where a remote service is discovered by zookeeper, but no proxy is created when I run multiple servers on the same machine exporting the same service.  Where should I be setting breakpoints to track down this problem?
Bryan
_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ecf-dev
ecf-dev mailing list
 ecf-dev@xxxxxxxxxxx
 https://dev.eclipse.org/mailman/listinfo/ecf-dev
 
ecf-dev mailing list
 ecf-dev@xxxxxxxxxxx
 https://dev.eclipse.org/mailman/listinfo/ecf-dev
 
 |