Thread: RE: [orbitcpp-list] Problem with running compiled code on two mac hines.
Status: Beta
Brought to you by:
philipd
From: Alix P. <al...@no...> - 2002-12-23 21:28:12
|
Actually, I just use the "string_to_object" facility in this instance which turns the IOR written to a file into an object id, I don't use any naming service (in our benchmarking we evaluate naming service separately), here is summary of the client code CORBA::ORB_var orb = CORBA::ORB_init(argc, argv,"orbit-local-orb"); // Read and destringify the Og object's IOR. ifstream in("synchronousTests.ior"); string ior; in >> ior; CORBA::Object_var obj = orb->string_to_object(ior.c_str()); if ( CORBA::is_nil( obj.in() ) ) { cerr << "Nil synchronousTests reference" << endl; throw 0; } // Try to narrow to Og::synchronousTests OgB::synchronousTests_var st = OgB::synchronousTests::_narrow(obj.in()); if (CORBA::is_nil(st.in())) { cerr << "Argument is not a synchronousTests reference" << endl; throw 0; } switch (method) { case STEST1: gettimeofday(&startTime,NULL); for (i=0;i<repetitions;i++) { tr = st->sTest1(100); } gettimeofday(&endTime,NULL); delta = calcDifferenceInTimes(&startTime,&endTime); cout << "result is " << tr << " after " << repetitions << " repetitions" << endl; break; default: break; } * Alix Pouladdej Nortel Networks Advanced Technology (ATI) www http://navigate.us.nortel.com/ati * Tel: (613) 765-6043 Esn: (6+) 395-6043 * E-mail: mailto:al...@no... * Fax: (613) 765-0678 -----Original Message----- From: Dan Kegel [mailto:dk...@ix...] Sent: Monday, December 23, 2002 4:15 PM To: Pouladdej, Alix [CAR:0V11:EXCH] Cc: orb...@li... Subject: Re: [orbitcpp-list] Problem with running compiled code on two mac hines. How do you pass the object reference to the client? Does it use a naming service to obtain the reference? I did some benchmarks comparing TAO and Orbit; see http://www.kegel.com/dkcorbabench/ - Dan Alix Pouladdej wrote: > I run the client as follows: > ./Client -S 1 -R 1000 > > where -S and -R are two input parameters to the client's main (-S for > Synchronous Test and R for number or > reptitions that the operation is carried out e.g 1000 times as in the > above case.) > > so, I basically don't provide any additional information for the > client > side! Do I need to? > > Just a note that I run the same set up for TAO ORB and it works; we > are > in the process of compare/contrast > TAO ORB and OrbitCPP for throughput and efficiency. > > > > * > Alix Pouladdej > Nortel Networks > Advanced Technology (ATI) > www http://navigate.us.nortel.com/ati > * Tel: (613) 765-6043 > Esn: (6+) 395-6043 > * E-mail: mailto:al...@no... > * Fax: (613) 765-0678 > > > > -----Original Message----- > From: Dan Kegel [mailto:dk...@ix...] > Sent: Monday, December 23, 2002 3:59 PM > To: Pouladdej, Alix [CAR:0V11:EXCH]; > orb...@li... > Subject: Re: [orbitcpp-list] Problem with running compiled code on two > machines. > > > Alix Pouladdej wrote: > > I have successfully compiled and run a client and server on the > SAME > workstation. When I try to run the client and server on > separate > worksation, it fails > > How do you run the client? > > Can you strace the client to see what it's doing? > A common problem is, the client and server can't ping > each other using the hostname embedded in the, um, URLs > that Corba sends. (It's been so long I'm forgetting > the lingo.) > - Dan > |
From: Alix P. <al...@no...> - 2002-12-23 21:50:38
|
OK. I can ping from both machines. But the peculiar thing is that with TAO ORB, I can do the same piece of code but not with OrbitCPP. My concern is that I have missed someting associated with the OrbitC part of the code which OrbitCPP uses?! * Alix Pouladdej Nortel Networks Advanced Technology (ATI) www http://navigate.us.nortel.com/ati * Tel: (613) 765-6043 Esn: (6+) 395-6043 * E-mail: mailto:al...@no... * Fax: (613) 765-0678 -----Original Message----- From: Dan Kegel [mailto:dk...@ix...] Sent: Monday, December 23, 2002 4:37 PM To: Pouladdej, Alix [CAR:0V11:EXCH] Cc: orb...@li... Subject: Re: [orbitcpp-list] Problem with running compiled code on two mac hines. OK. One thing to worry about is the hostname embedded in the IOR. Make sure both client and server can do ping `hostname` and make sure they can each ping each other by those names, since IORs often have hostnames rather than IP adrs embedded. - Dan Alix Pouladdej wrote: > Actually, I just use the "string_to_object" facility in this instance > which turns the > IOR written to a file into an object id, I don't use any naming service > (in our benchmarking > we evaluate naming service separately), here is summary of the client code > > CORBA::ORB_var orb = CORBA::ORB_init(argc, > argv,"orbit-local-orb"); > > // Read and destringify the Og object's IOR. > > ifstream in("synchronousTests.ior"); > string ior; > in >> ior; > CORBA::Object_var obj = orb->string_to_object(ior.c_str()); > > if ( CORBA::is_nil( obj.in() ) ) > { > cerr << "Nil synchronousTests reference" << endl; > throw 0; > } > // Try to narrow to Og::synchronousTests > OgB::synchronousTests_var st = > OgB::synchronousTests::_narrow(obj.in()); > if (CORBA::is_nil(st.in())) > { > cerr << "Argument is not a synchronousTests reference" << endl; > throw 0; > } > > switch (method) > { > case STEST1: > gettimeofday(&startTime,NULL); > for (i=0;i<repetitions;i++) > { > tr = st->sTest1(100); > } > gettimeofday(&endTime,NULL); > delta = calcDifferenceInTimes(&startTime,&endTime); > cout << "result is " << tr << " after " << repetitions << > " repetitions" << endl; > break; > > > default: > break; > } > > > > > * > Alix Pouladdej > Nortel Networks > Advanced Technology (ATI) > www http://navigate.us.nortel.com/ati > * Tel: (613) 765-6043 > Esn: (6+) 395-6043 > * E-mail: mailto:al...@no... > * Fax: (613) 765-0678 > > > > -----Original Message----- > From: Dan Kegel [mailto:dk...@ix...] > Sent: Monday, December 23, 2002 4:15 PM > To: Pouladdej, Alix [CAR:0V11:EXCH] > Cc: orb...@li... > Subject: Re: [orbitcpp-list] Problem with running compiled code on two > mac hines. > > > How do you pass the object reference to the client? > Does it use a naming service to obtain the reference? > > I did some benchmarks comparing TAO and Orbit; see > http://www.kegel.com/dkcorbabench/ > - Dan > > Alix Pouladdej wrote: > > I run the client as follows: > > ./Client -S 1 -R 1000 > > > > where -S and -R are two input parameters to the client's main (-S > for > Synchronous Test and R for number or > reptitions that the > operation is carried out e.g 1000 times as in the > above case.) > > > > so, I basically don't provide any additional information for the > > client > > side! Do I need to? > > > > Just a note that I run the same set up for TAO ORB and it works; we > > are > > in the process of compare/contrast > > TAO ORB and OrbitCPP for throughput and efficiency. > > > > > > > > * > > Alix Pouladdej > > Nortel Networks > > Advanced Technology (ATI) > > www http://navigate.us.nortel.com/ati > > * Tel: (613) 765-6043 > > Esn: (6+) 395-6043 > > * E-mail: mailto:al...@no... > > * Fax: (613) 765-0678 > > > > > > > > -----Original Message----- > > From: Dan Kegel [mailto:dk...@ix...] > > Sent: Monday, December 23, 2002 3:59 PM > > To: Pouladdej, Alix [CAR:0V11:EXCH]; > > orb...@li... > > Subject: Re: [orbitcpp-list] Problem with running compiled code on two > > machines. > > > > > > Alix Pouladdej wrote: > > > I have successfully compiled and run a client and server on the > > SAME > workstation. When I try to run the client and server on > > separate > worksation, it fails > > > > How do you run the client? > > > > Can you strace the client to see what it's doing? > > A common problem is, the client and server can't ping > > each other using the hostname embedded in the, um, URLs > > that Corba sends. (It's been so long I'm forgetting > > the lingo.) > > - Dan > > > > > |
From: Dan K. <dk...@ix...> - 2002-12-23 22:10:13
|
Alix Pouladdej wrote: > OK. I can ping from both machines. A few more thoughts: See http://orbit-resource.sourceforge.net/faq.html and especially question 2a) Have you verified that the server is listening on the expected port, using netstat? Can you post a tcpdump log of the traffic caused by the client invocation? Just to be doubly clear, can you post the output of hostname ifconfig ping `hostname` from both client and server, and a log of the client pinging the server using the server's preferred hostname? (I know this is pedantic, but it's the only way to make sure there hasn't been a misunderstanding.) - Dan But the peculiar thing is that with > TAO ORB, I can do the same piece of code > but not with OrbitCPP. My concern is that I have missed someting > associated with the OrbitC part of the code > which OrbitCPP uses?! > > > -----Original Message----- > From: Dan Kegel [mailto:dk...@ix...] > > > OK. One thing to worry about is the hostname embedded in the IOR. > > Make sure both client and server can do > ping `hostname` > and make sure they can each ping each other by those names, since IORs > often have hostnames rather than IP adrs embedded. |
From: Dan K. <dk...@ix...> - 2002-12-23 21:42:47
|
OK. One thing to worry about is the hostname embedded in the IOR. Make sure both client and server can do ping `hostname` and make sure they can each ping each other by those names, since IORs often have hostnames rather than IP adrs embedded. - Dan Alix Pouladdej wrote: > Actually, I just use the "string_to_object" facility in this instance > which turns the > IOR written to a file into an object id, I don't use any naming service > (in our benchmarking > we evaluate naming service separately), here is summary of the client code > > CORBA::ORB_var orb = CORBA::ORB_init(argc, argv,"orbit-local-orb"); > > // Read and destringify the Og object's IOR. > > ifstream in("synchronousTests.ior"); > string ior; > in >> ior; > CORBA::Object_var obj = orb->string_to_object(ior.c_str()); > > if ( CORBA::is_nil( obj.in() ) ) > { > cerr << "Nil synchronousTests reference" << endl; > throw 0; > } > // Try to narrow to Og::synchronousTests > OgB::synchronousTests_var st = > OgB::synchronousTests::_narrow(obj.in()); > if (CORBA::is_nil(st.in())) > { > cerr << "Argument is not a synchronousTests reference" << endl; > throw 0; > } > > switch (method) > { > case STEST1: > gettimeofday(&startTime,NULL); > for (i=0;i<repetitions;i++) > { > tr = st->sTest1(100); > } > gettimeofday(&endTime,NULL); > delta = calcDifferenceInTimes(&startTime,&endTime); > cout << "result is " << tr << " after " << repetitions << > " repetitions" << endl; > break; > > > default: > break; > } > > > > > * > Alix Pouladdej > Nortel Networks > Advanced Technology (ATI) > www http://navigate.us.nortel.com/ati > * Tel: (613) 765-6043 > Esn: (6+) 395-6043 > * E-mail: mailto:al...@no... > * Fax: (613) 765-0678 > > > > -----Original Message----- > From: Dan Kegel [mailto:dk...@ix...] > Sent: Monday, December 23, 2002 4:15 PM > To: Pouladdej, Alix [CAR:0V11:EXCH] > Cc: orb...@li... > Subject: Re: [orbitcpp-list] Problem with running compiled code on two > mac hines. > > > How do you pass the object reference to the client? > Does it use a naming service to obtain the reference? > > I did some benchmarks comparing TAO and Orbit; see > http://www.kegel.com/dkcorbabench/ > - Dan > > Alix Pouladdej wrote: > > I run the client as follows: > > ./Client -S 1 -R 1000 > > > > where -S and -R are two input parameters to the client's main (-S for > > Synchronous Test and R for number or > > reptitions that the operation is carried out e.g 1000 times as in the > > above case.) > > > > so, I basically don't provide any additional information for the > > client > > side! Do I need to? > > > > Just a note that I run the same set up for TAO ORB and it works; we > > are > > in the process of compare/contrast > > TAO ORB and OrbitCPP for throughput and efficiency. > > > > > > > > * > > Alix Pouladdej > > Nortel Networks > > Advanced Technology (ATI) > > www http://navigate.us.nortel.com/ati > > * Tel: (613) 765-6043 > > Esn: (6+) 395-6043 > > * E-mail: mailto:al...@no... > > * Fax: (613) 765-0678 > > > > > > > > -----Original Message----- > > From: Dan Kegel [mailto:dk...@ix...] > > Sent: Monday, December 23, 2002 3:59 PM > > To: Pouladdej, Alix [CAR:0V11:EXCH]; > > orb...@li... > > Subject: Re: [orbitcpp-list] Problem with running compiled code on two > > machines. > > > > > > Alix Pouladdej wrote: > > > I have successfully compiled and run a client and server on the > > SAME > workstation. When I try to run the client and server on > > separate > worksation, it fails > > > > How do you run the client? > > > > Can you strace the client to see what it's doing? > > A common problem is, the client and server can't ping > > each other using the hostname embedded in the, um, URLs > > that Corba sends. (It's been so long I'm forgetting > > the lingo.) > > - Dan > > > > > |