diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-06-24 01:49:38 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-06-24 01:49:38 +0000 |
commit | 9de9b2eca8ccf01bf22ee0cffded55d69fedee54 (patch) | |
tree | 636ffd483fda196035cdf0c9bfd237a442a248d1 /TAO/orbsvcs | |
parent | 61e798f91b29b3fed910453e0132c7794075bd7c (diff) | |
download | ATCD-9de9b2eca8ccf01bf22ee0cffded55d69fedee54.tar.gz |
ChangeLogTag:Wed Jun 23 20:40:46 1999 Carlos O'Ryan <coryan@cs.wustl.edu>
Diffstat (limited to 'TAO/orbsvcs')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp | 25 | ||||
-rwxr-xr-x | TAO/orbsvcs/tests/CosEC_Multiple/run_test.pl | 20 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Consumer.cpp | 63 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp | 116 | ||||
-rwxr-xr-x | TAO/orbsvcs/tests/EC_Custom_Marshal/run_test.pl | 11 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/EC_Mcast/EC_Mcast.cpp | 321 | ||||
-rwxr-xr-x | TAO/orbsvcs/tests/EC_Mcast/run_test.pl | 4 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp | 56 | ||||
-rwxr-xr-x | TAO/orbsvcs/tests/Event_Latency/run_test.pl | 4 |
9 files changed, 274 insertions, 346 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp b/TAO/orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp index 913d05431d4..f6df18233df 100644 --- a/TAO/orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp +++ b/TAO/orbsvcs/orbsvcs/Event/EC_ProxySupplier.cpp @@ -372,7 +372,17 @@ TAO_EC_ProxyPushSupplier::push_to_consumer (const RtecEventComm::EventSet& event // references, } - consumer->push (event, ACE_TRY_ENV); + ACE_TRY + { + consumer->push (event, ACE_TRY_ENV); + ACE_TRY_CHECK; + } + ACE_CATCHANY + { + // @@ This is where the policies for misbehaving consumers + // should kick in.... for the moment just ignore them. + } + ACE_ENDTRY; } void @@ -395,7 +405,18 @@ TAO_EC_ProxyPushSupplier::reactive_push_to_consumer ( ACE_GUARD_THROW_EX (TAO_EC_Unlock, ace_mon, reverse_lock, RtecEventChannelAdmin::EventChannel::SYNCHRONIZATION_ERROR ()); ACE_CHECK; - consumer->push (event, ACE_TRY_ENV); + + ACE_TRY + { + consumer->push (event, ACE_TRY_ENV); + ACE_TRY_CHECK; + } + ACE_CATCHANY + { + // @@ This is where the policies for misbehaving consumers + // should kick in.... for the moment just ignore them. + } + ACE_ENDTRY; } // The reference count was incremented just before delegating on the diff --git a/TAO/orbsvcs/tests/CosEC_Multiple/run_test.pl b/TAO/orbsvcs/tests/CosEC_Multiple/run_test.pl index 8f1d7c9b184..78ee631e29b 100755 --- a/TAO/orbsvcs/tests/CosEC_Multiple/run_test.pl +++ b/TAO/orbsvcs/tests/CosEC_Multiple/run_test.pl @@ -28,22 +28,34 @@ $CosEC2_params = "-n cosec2 -e 20 -o 5 -p \"6 21\""; sub cosec_multiple_test1 { # first start the Naming service.. - $SV1 = Process::Create ($EXEPREFIX."../../Naming_Service/Naming_Service".$EXE_EXT, ""); + $SV1 = Process::Create ("..".$DIR_SEPARATOR + ."..".$DIR_SEPARATOR + ."Naming_Service".$DIR_SEPARATOR + ."Naming_Service".$EXE_EXT, ""); sleep 10; # now start the Rt EC.. - $SV2 = Process::Create ($EXEPREFIX."../../Event_Service/Event_Service".$EXE_EXT, ""); + $SV2 = Process::Create ("..".$DIR_SEPARATOR + ."..".$DIR_SEPARATOR + ."Event_Service".$DIR_SEPARATOR + ."Event_Service".$EXE_EXT, "-t new"); sleep 10; # now start the CosEC1.. - $SV3 = Process::Create ($EXEPREFIX."../../CosEvent_Service/CosEvent_Service".$EXE_EXT, $CosEC1_params); + $SV3 = Process::Create ("..".$DIR_SEPARATOR + ."..".$DIR_SEPARATOR + ."CosEvent_Service".$DIR_SEPARATOR + ."CosEvent_Service".$EXE_EXT, $CosEC1_params); sleep 10; # now start the CosEC2.. - $SV4 = Process::Create ($EXEPREFIX."../../CosEvent_Service/CosEvent_Service".$EXE_EXT, $CosEC2_params); + $SV4 = Process::Create ("..".$DIR_SEPARATOR + ."..".$DIR_SEPARATOR + ."CosEvent_Service".$DIR_SEPARATOR + ."CosEvent_Service".$EXE_EXT, $CosEC2_params); sleep 10; diff --git a/TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Consumer.cpp b/TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Consumer.cpp index 35431480684..14503f33c8a 100644 --- a/TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Consumer.cpp +++ b/TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Consumer.cpp @@ -7,10 +7,8 @@ #include "tao/Timeprobe.h" #include "orbsvcs/Event_Utilities.h" #include "orbsvcs/Event_Service_Constants.h" -#include "orbsvcs/Scheduler_Factory.h" #include "orbsvcs/Time_Utilities.h" -#include "orbsvcs/Sched/Config_Scheduler.h" -#include "orbsvcs/Event/Event_Channel.h" +#include "orbsvcs/CosNamingC.h" #include "ECM_Consumer.h" #include "ECM_Data.h" @@ -123,9 +121,6 @@ Driver::run (int argc, char* argv[]) CosNaming::NamingContext::_narrow (naming_obj.in (), TAO_TRY_ENV); TAO_CHECK_ENV; - if (ACE_Scheduler_Factory::use_config (naming_context.in ()) == -1) - return -1; - CosNaming::Name name (1); name.length (1); name[0].id = CORBA::string_dup ("EventService"); @@ -376,65 +371,43 @@ void Test_Consumer::connect (const char* name, int event_a, int event_b, RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment& TAO_IN_ENV) + CORBA::Environment& ACE_TRY_ENV) { - RtecScheduler::Scheduler_ptr server = - ACE_Scheduler_Factory::server (); - - RtecScheduler::handle_t rt_info = - server->create (name, TAO_IN_ENV); - if (TAO_IN_ENV.exception () != 0) return; - - // The worst case execution time is far less than 2 - // milliseconds, but that is a safe estimate.... - ACE_Time_Value tv (0, 2000); - TimeBase::TimeT time; - ORBSVCS_Time::Time_Value_to_TimeT (time, tv); - server->set (rt_info, - RtecScheduler::VERY_HIGH_CRITICALITY, - time, time, time, - 0, - RtecScheduler::VERY_LOW_IMPORTANCE, - time, - 0, - RtecScheduler::OPERATION, - TAO_IN_ENV); - if (TAO_IN_ENV.exception () != 0) return; - ACE_ConsumerQOS_Factory qos; qos.start_disjunction_group (); - qos.insert_type (ACE_ES_EVENT_SHUTDOWN, rt_info); - qos.insert_type (event_a, rt_info); - qos.insert_type (event_b, rt_info); + qos.insert_type (ACE_ES_EVENT_SHUTDOWN, 0); + qos.insert_type (event_a, 0); + qos.insert_type (event_b, 0); // = Connect as a consumer. RtecEventChannelAdmin::ConsumerAdmin_var consumer_admin = - ec->for_consumers (TAO_IN_ENV); - if (TAO_IN_ENV.exception () != 0) return; + ec->for_consumers (ACE_TRY_ENV); + ACE_CHECK; this->supplier_proxy_ = - consumer_admin->obtain_push_supplier (TAO_IN_ENV); - if (TAO_IN_ENV.exception () != 0) return; + consumer_admin->obtain_push_supplier (ACE_TRY_ENV); + ACE_CHECK; - RtecEventComm::PushConsumer_var objref = this->_this (TAO_IN_ENV); - if (TAO_IN_ENV.exception () != 0) return; + RtecEventComm::PushConsumer_var objref = this->_this (ACE_TRY_ENV); + ACE_CHECK; this->supplier_proxy_->connect_push_consumer (objref.in (), qos.get_ConsumerQOS (), - TAO_IN_ENV); - if (TAO_IN_ENV.exception () != 0) return; + ACE_TRY_ENV); + ACE_CHECK; + } void -Test_Consumer::disconnect (CORBA::Environment &TAO_IN_ENV) +Test_Consumer::disconnect (CORBA::Environment &ACE_TRY_ENV) { if (CORBA::is_nil (this->supplier_proxy_.in ())) return; - this->supplier_proxy_->disconnect_push_supplier (TAO_IN_ENV); - if (TAO_IN_ENV.exception () != 0) return; + RtecEventChannelAdmin::ProxyPushSupplier_var proxy = + this->supplier_proxy_._retn (); - this->supplier_proxy_ = 0; + proxy->disconnect_push_supplier (ACE_TRY_ENV); } void diff --git a/TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp b/TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp index b21f12ec045..1b5732520f2 100644 --- a/TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp +++ b/TAO/orbsvcs/tests/EC_Custom_Marshal/ECM_Supplier.cpp @@ -7,10 +7,8 @@ #include "tao/Timeprobe.h" #include "orbsvcs/Event_Utilities.h" #include "orbsvcs/Event_Service_Constants.h" -#include "orbsvcs/Scheduler_Factory.h" #include "orbsvcs/Time_Utilities.h" -#include "orbsvcs/Sched/Config_Scheduler.h" -#include "orbsvcs/Event/Event_Channel.h" +#include "orbsvcs/CosNamingC.h" #include "ECM_Supplier.h" #include "ECM_Data.h" @@ -128,9 +126,6 @@ ECMS_Driver::run (int argc, char* argv[]) CosNaming::NamingContext::_narrow (naming_obj.in (), TAO_TRY_ENV); TAO_CHECK_ENV; - if (ACE_Scheduler_Factory::use_config (naming_context.in ()) == -1) - return -1; - CosNaming::Name name (1); name.length (1); name[0].id = CORBA::string_dup ("EventService"); @@ -431,88 +426,51 @@ Test_Supplier::connect (const char* name, int event_b, int event_period, RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { - TAO_TRY - { - RtecScheduler::Scheduler_ptr server = - ACE_Scheduler_Factory::server (); - - RtecScheduler::handle_t rt_info = - server->create (name, TAO_TRY_ENV); - TAO_CHECK_ENV; - - ACE_Time_Value tv (0, event_period); - RtecScheduler::Period_t rate = tv.usec () * 10; - - // The execution times are set to reasonable values, but - // actually they are changed on the real execution, i.e. we - // lie to the scheduler to obtain right priorities; but we - // don't care if the set is schedulable. - tv.set (0, 2000); - TimeBase::TimeT time; - ORBSVCS_Time::Time_Value_to_TimeT (time, tv); - server->set (rt_info, - RtecScheduler::VERY_HIGH_CRITICALITY, - time, time, time, - rate, - RtecScheduler::VERY_LOW_IMPORTANCE, - time, - 1, - RtecScheduler::OPERATION, - TAO_TRY_ENV); - TAO_CHECK_ENV; - - this->supplier_id_ = ACE::crc32 (name); - ACE_DEBUG ((LM_DEBUG, "ID for <%s> is %04.4x\n", name, - this->supplier_id_)); - - ACE_SupplierQOS_Factory qos; - qos.insert (this->supplier_id_, - event_a, - rt_info, 1); - qos.insert (this->supplier_id_, - event_b, - rt_info, 1); - qos.insert (this->supplier_id_, - ACE_ES_EVENT_SHUTDOWN, - rt_info, 1); - - RtecEventChannelAdmin::SupplierAdmin_var supplier_admin = - ec->for_suppliers (TAO_TRY_ENV); - TAO_CHECK_ENV; - - this->consumer_proxy_ = - supplier_admin->obtain_push_consumer (TAO_TRY_ENV); - TAO_CHECK_ENV; - - RtecEventComm::PushSupplier_var objref = - this->supplier_._this (TAO_TRY_ENV); - TAO_CHECK_ENV; - - this->consumer_proxy_->connect_push_supplier (objref.in (), - qos.get_SupplierQOS (), - TAO_TRY_ENV); - TAO_CHECK_ENV; - - } - TAO_CATCHANY - { - TAO_RETHROW; - } - TAO_ENDTRY; + this->supplier_id_ = ACE::crc32 (name); + ACE_DEBUG ((LM_DEBUG, "ID for <%s> is %04.4x\n", name, + this->supplier_id_)); + + ACE_SupplierQOS_Factory qos; + qos.insert (this->supplier_id_, + event_a, + 0, 1); + qos.insert (this->supplier_id_, + event_b, + 0, 1); + qos.insert (this->supplier_id_, + ACE_ES_EVENT_SHUTDOWN, + 0, 1); + + RtecEventChannelAdmin::SupplierAdmin_var supplier_admin = + ec->for_suppliers (ACE_TRY_ENV); + ACE_CHECK; + + this->consumer_proxy_ = + supplier_admin->obtain_push_consumer (ACE_TRY_ENV); + ACE_CHECK; + + RtecEventComm::PushSupplier_var objref = + this->supplier_._this (ACE_TRY_ENV); + ACE_CHECK; + + this->consumer_proxy_->connect_push_supplier (objref.in (), + qos.get_SupplierQOS (), + ACE_TRY_ENV); + ACE_CHECK; } void -Test_Supplier::disconnect (CORBA::Environment &TAO_IN_ENV) +Test_Supplier::disconnect (CORBA::Environment &ACE_TRY_ENV) { if (CORBA::is_nil (this->consumer_proxy_.in ())) return; - this->consumer_proxy_->disconnect_push_consumer (TAO_IN_ENV); - if (TAO_IN_ENV.exception () != 0) return; + RtecEventChannelAdmin::ProxyPushConsumer_var proxy = + this->consumer_proxy_._retn (); - this->consumer_proxy_ = 0; + this->consumer_proxy_->disconnect_push_consumer (ACE_TRY_ENV); } int diff --git a/TAO/orbsvcs/tests/EC_Custom_Marshal/run_test.pl b/TAO/orbsvcs/tests/EC_Custom_Marshal/run_test.pl index 5ebc5416dc7..82d4989007a 100755 --- a/TAO/orbsvcs/tests/EC_Custom_Marshal/run_test.pl +++ b/TAO/orbsvcs/tests/EC_Custom_Marshal/run_test.pl @@ -18,13 +18,20 @@ $NS = Process::Create ("..".$DIR_SEPARATOR. "Naming_Service".$DIR_SEPARATOR. "Naming_Service".$EXE_EXT, " -o $NS_ior "); -sleep $sleeptime; + +if (ACE::waitforfile_timed ($NS_ior, 5) == -1) { + print STDERR "ERROR: waiting for naming service IOR file\n"; + $NS->Kill (); $NS->TimedWait (1); + exit 1; +} $ES = Process::Create ("..".$DIR_SEPARATOR. "..".$DIR_SEPARATOR. "Event_Service".$DIR_SEPARATOR. "Event_Service".$EXE_EXT, - "-ORBNameServiceIOR file://$NS_ior"); + "-ORBNameServiceIOR file://$NS_ior -t new"); + +sleep $sleeptime; $C = Process::Create ($EXEPREFIX."ECM_Consumer".$EXE_EXT, "-ORBNameServiceIOR file://$NS_ior"); diff --git a/TAO/orbsvcs/tests/EC_Mcast/EC_Mcast.cpp b/TAO/orbsvcs/tests/EC_Mcast/EC_Mcast.cpp index 0a598f3e9e9..65590386122 100644 --- a/TAO/orbsvcs/tests/EC_Mcast/EC_Mcast.cpp +++ b/TAO/orbsvcs/tests/EC_Mcast/EC_Mcast.cpp @@ -33,11 +33,12 @@ ECM_Driver::ECM_Driver (void) int ECM_Driver::run (int argc, char* argv[]) { - TAO_TRY + ACE_DECLARE_NEW_CORBA_ENV; + ACE_TRY { this->orb_ = - CORBA::ORB_init (argc, argv, "", TAO_TRY_ENV); - TAO_CHECK_ENV; + CORBA::ORB_init (argc, argv, "", ACE_TRY_ENV); + ACE_TRY_CHECK; CORBA::Object_var poa_object = this->orb_->resolve_initial_references("RootPOA"); @@ -47,12 +48,12 @@ ECM_Driver::run (int argc, char* argv[]) 1); PortableServer::POA_var root_poa = - PortableServer::POA::_narrow (poa_object.in (), TAO_TRY_ENV); - TAO_CHECK_ENV; + PortableServer::POA::_narrow (poa_object.in (), ACE_TRY_ENV); + ACE_TRY_CHECK; PortableServer::POAManager_var poa_manager = - root_poa->the_POAManager (TAO_TRY_ENV); - TAO_CHECK_ENV; + root_poa->the_POAManager (ACE_TRY_ENV); + ACE_TRY_CHECK; if (this->parse_args (argc, argv)) return 1; @@ -124,75 +125,76 @@ ECM_Driver::run (int argc, char* argv[]) // Register Event_Service with the Naming Service. RtecEventChannelAdmin::EventChannel_var ec = - ec_impl._this (TAO_TRY_ENV); - TAO_CHECK_ENV; + ec_impl._this (ACE_TRY_ENV); + ACE_TRY_CHECK; CORBA::String_var str = - this->orb_->object_to_string (ec.in (), TAO_TRY_ENV); - TAO_CHECK_ENV; + this->orb_->object_to_string (ec.in (), ACE_TRY_ENV); + ACE_TRY_CHECK; ACE_DEBUG ((LM_DEBUG, "The (local) EC IOR is <%s>\n", str.in ())); - poa_manager->activate (TAO_TRY_ENV); - TAO_CHECK_ENV; + poa_manager->activate (ACE_TRY_ENV); + ACE_TRY_CHECK; - ec_impl.activate (TAO_TRY_ENV); - TAO_CHECK_ENV; + ec_impl.activate (ACE_TRY_ENV); + ACE_TRY_CHECK; ACE_DEBUG ((LM_DEBUG, "EC_Mcast: local EC objref ready\n")); this->open_federations (ec.in (), - TAO_TRY_ENV); - TAO_CHECK_ENV; + ACE_TRY_ENV); + ACE_TRY_CHECK; ACE_DEBUG ((LM_DEBUG, "EC_Mcast: open_federations done\n")); this->open_senders (ec.in (), - TAO_TRY_ENV); - TAO_CHECK_ENV; + ACE_TRY_ENV); + ACE_TRY_CHECK; ACE_DEBUG ((LM_DEBUG, "EC_Mcast: open_senders done\n")); this->open_receivers (ec.in (), - TAO_TRY_ENV); - TAO_CHECK_ENV; + ACE_TRY_ENV); + ACE_TRY_CHECK; ACE_DEBUG ((LM_DEBUG, "EC_Mcast: open_receivers done\n")); this->activate_federations (ec.in (), - TAO_TRY_ENV); - TAO_CHECK_ENV; + ACE_TRY_ENV); + ACE_TRY_CHECK; ACE_DEBUG ((LM_DEBUG, "EC_Mcast: activate_federations done\n")); ACE_DEBUG ((LM_DEBUG, "EC_Mcast: running the test\n")); - if (this->orb_->run () == -1) - ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "orb->run"), -1); + while (this->federations_running_ > 0) + this->orb_->perform_work (); this->dump_results (); - this->close_receivers (TAO_TRY_ENV); - TAO_CHECK_ENV; - this->close_senders (TAO_TRY_ENV); - TAO_CHECK_ENV; + this->close_receivers (ACE_TRY_ENV); + ACE_TRY_CHECK; + this->close_senders (ACE_TRY_ENV); + ACE_TRY_CHECK; - this->close_federations (TAO_TRY_ENV); - TAO_CHECK_ENV; + this->close_federations (ACE_TRY_ENV); + ACE_TRY_CHECK; ACE_DEBUG ((LM_DEBUG, "EC_Mcast: shutdown the EC\n")); - ec_impl.shutdown (TAO_TRY_ENV); - TAO_CHECK_ENV; + ec_impl.shutdown (ACE_TRY_ENV); + ACE_TRY_CHECK; + } - TAO_CATCH (CORBA::SystemException, sys_ex) + ACE_CATCH (CORBA::SystemException, sys_ex) { - TAO_TRY_ENV.print_exception ("SYS_EX"); + ACE_PRINT_EXCEPTION (sys_ex, "SYS_EX"); } - TAO_CATCHANY - { - TAO_TRY_ENV.print_exception ("NON SYS EX"); + ACE_CATCHANY + { + ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, "NON SYS EX"); } - TAO_ENDTRY; + ACE_ENDTRY; return 0; } @@ -202,26 +204,25 @@ ECM_Driver::federation_has_shutdown (ECM_Local_Federation *federation, { ACE_DEBUG ((LM_DEBUG, "Federation <%s> shuting down\n", federation->name ())); - this->federations_running_--; - if (this->federations_running_ <= 0) - this->orb_->shutdown (); + if (this->federations_running_ > 0) + this->federations_running_--; } void ECM_Driver::open_federations (RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { for (int i = 0; i < this->local_federations_count_; ++i) { this->local_federations_[i]->open (this->event_count_, - ec, TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ec, ACE_TRY_ENV); + ACE_CHECK; } } void ECM_Driver::activate_federations (RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { this->federations_running_ = this->local_federations_count_; RtecEventComm::Time interval = this->event_period_; @@ -230,31 +231,31 @@ ECM_Driver::activate_federations (RtecEventChannelAdmin::EventChannel_ptr ec, { this->local_federations_[i]->activate (ec, interval, - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; } } void -ECM_Driver::close_federations (CORBA::Environment &TAO_IN_ENV) +ECM_Driver::close_federations (CORBA::Environment &ACE_TRY_ENV) { for (int i = 0; i < this->local_federations_count_; ++i) { - this->local_federations_[i]->close (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->local_federations_[i]->close (ACE_TRY_ENV); + ACE_CHECK; } } void ECM_Driver::open_senders (RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { if (this->endpoint_.dgram ().open (ACE_Addr::sap_any) == -1) { // @@ TODO throw an application specific exception. - TAO_IN_ENV.exception (new CORBA::COMM_FAILURE ()); - return; + ACE_THROW (CORBA::COMM_FAILURE ()); } + ACE_INET_Addr ignore_from; this->endpoint_.dgram ().get_local_addr (ignore_from); ACE_DEBUG ((LM_DEBUG, "ECM_Driver::open_senders - " @@ -265,42 +266,42 @@ ECM_Driver::open_senders (RtecEventChannelAdmin::EventChannel_ptr ec, { this->all_federations_[i]->open (&this->endpoint_, ec, - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; } } void -ECM_Driver::close_senders (CORBA::Environment &TAO_IN_ENV) +ECM_Driver::close_senders (CORBA::Environment &ACE_TRY_ENV) { for (int i = 0; i < this->all_federations_count_; ++i) { - this->all_federations_[i]->close (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->all_federations_[i]->close (ACE_TRY_ENV); + ACE_CHECK; } this->endpoint_.dgram ().close (); } void ECM_Driver::open_receivers (RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { for (int i = 0; i < this->local_federations_count_; ++i) { this->local_federations_[i]->open_receiver (ec, &this->endpoint_, - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; } } void -ECM_Driver::close_receivers (CORBA::Environment &TAO_IN_ENV) +ECM_Driver::close_receivers (CORBA::Environment &ACE_TRY_ENV) { for (int i = 0; i < this->local_federations_count_; ++i) { - this->local_federations_[i]->close_receiver (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->local_federations_[i]->close_receiver (ACE_TRY_ENV); + ACE_CHECK; } } @@ -575,17 +576,17 @@ ECM_Federation::ECM_Federation (char* name, void ECM_Federation::open (TAO_ECG_UDP_Out_Endpoint *endpoint, RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { RtecUDPAdmin::AddrServer_var addr_server = - this->addr_server (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->addr_server (ACE_TRY_ENV); + ACE_CHECK; this->sender_.init (ec, addr_server.in (), endpoint, - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; // @@ TODO Make this a parameter.... this->sender_.mtu (64); @@ -603,17 +604,17 @@ ECM_Federation::open (TAO_ECG_UDP_Out_Endpoint *endpoint, qos.insert_type (this->consumer_ipaddr (i), 0); } RtecEventChannelAdmin::ConsumerQOS qos_copy = qos.get_ConsumerQOS (); - this->sender_.open (qos_copy, TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->sender_.open (qos_copy, ACE_TRY_ENV); + ACE_CHECK; } void -ECM_Federation::close (CORBA::Environment &TAO_IN_ENV) +ECM_Federation::close (CORBA::Environment &ACE_TRY_ENV) { - this->sender_.close (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); - this->sender_.shutdown (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->sender_.close (ACE_TRY_ENV); + ACE_CHECK; + this->sender_.shutdown (ACE_TRY_ENV); + ACE_CHECK; } RtecUDPAdmin::AddrServer_ptr @@ -633,7 +634,7 @@ ECM_Supplier::ECM_Supplier (ECM_Local_Federation* federation) void ECM_Supplier::open (const char* name, RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { this->supplier_id_ = ACE::crc32 (name); ACE_DEBUG ((LM_DEBUG, "ID for <%s> is %04.4x\n", name, @@ -651,30 +652,30 @@ ECM_Supplier::open (const char* name, 0, 1); RtecEventChannelAdmin::SupplierAdmin_var supplier_admin = - ec->for_suppliers (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ec->for_suppliers (ACE_TRY_ENV); + ACE_CHECK; this->consumer_proxy_ = - supplier_admin->obtain_push_consumer (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + supplier_admin->obtain_push_consumer (ACE_TRY_ENV); + ACE_CHECK; - RtecEventComm::PushSupplier_var objref = this->_this (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + RtecEventComm::PushSupplier_var objref = this->_this (ACE_TRY_ENV); + ACE_CHECK; this->consumer_proxy_->connect_push_supplier (objref.in (), qos.get_SupplierQOS (), - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; } void -ECM_Supplier::close (CORBA::Environment &TAO_IN_ENV) +ECM_Supplier::close (CORBA::Environment &ACE_TRY_ENV) { if (CORBA::is_nil (this->consumer_proxy_.in ())) return; - this->consumer_proxy_->disconnect_push_consumer (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->consumer_proxy_->disconnect_push_consumer (ACE_TRY_ENV); + ACE_CHECK; this->consumer_proxy_ = 0; } @@ -682,7 +683,7 @@ ECM_Supplier::close (CORBA::Environment &TAO_IN_ENV) void ECM_Supplier::activate (RtecEventChannelAdmin::EventChannel_ptr ec, RtecEventComm::Time interval, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { ACE_ConsumerQOS_Factory consumer_qos; consumer_qos.start_disjunction_group (); @@ -692,21 +693,21 @@ ECM_Supplier::activate (RtecEventChannelAdmin::EventChannel_ptr ec, // = Connect as a consumer. RtecEventChannelAdmin::ConsumerAdmin_var consumer_admin = - ec->for_consumers (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ec->for_consumers (ACE_TRY_ENV); + ACE_CHECK; this->supplier_proxy_ = - consumer_admin->obtain_push_supplier (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + consumer_admin->obtain_push_supplier (ACE_TRY_ENV); + ACE_CHECK; RtecEventComm::PushConsumer_var cref = - this->consumer_._this (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->consumer_._this (ACE_TRY_ENV); + ACE_CHECK; this->supplier_proxy_->connect_push_consumer (cref.in (), consumer_qos.get_ConsumerQOS (), - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; } int @@ -717,7 +718,7 @@ ECM_Supplier::supplier_id (void) const void ECM_Supplier::push (const RtecEventComm::EventSet& events, - CORBA::Environment& TAO_IN_ENV) + CORBA::Environment& ACE_TRY_ENV) { for (u_int i = 0; i < events.length (); ++i) { @@ -726,18 +727,18 @@ ECM_Supplier::push (const RtecEventComm::EventSet& events, continue; this->federation_->supplier_timeout (this->consumer_proxy_.in (), - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; } } void -ECM_Supplier::disconnect_push_supplier (CORBA::Environment& TAO_IN_ENV) +ECM_Supplier::disconnect_push_supplier (CORBA::Environment& ACE_TRY_ENV) ACE_THROW_SPEC ((CORBA::SystemException)) { - ACE_UNUSED_ARG (TAO_IN_ENV); + ACE_UNUSED_ARG (ACE_TRY_ENV); - // this->supplier_proxy_->disconnect_push_supplier (TAO_IN_ENV); + // this->supplier_proxy_->disconnect_push_supplier (ACE_TRY_ENV); } void @@ -758,7 +759,7 @@ void ECM_Consumer::open (const char*, RtecEventChannelAdmin::EventChannel_ptr ec, ACE_RANDR_TYPE &seed, - CORBA::Environment& TAO_IN_ENV) + CORBA::Environment& ACE_TRY_ENV) { // The worst case execution time is far less than 2 // milliseconds, but that is a safe estimate.... @@ -767,22 +768,22 @@ ECM_Consumer::open (const char*, ORBSVCS_Time::Time_Value_to_TimeT (time, tv); // = Connect as a consumer. - this->consumer_admin_ = ec->for_consumers (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->consumer_admin_ = ec->for_consumers (ACE_TRY_ENV); + ACE_CHECK; - this->connect (seed, TAO_IN_ENV); + this->connect (seed, ACE_TRY_ENV); } void ECM_Consumer::connect (ACE_RANDR_TYPE &seed, - CORBA::Environment& TAO_IN_ENV) + CORBA::Environment& ACE_TRY_ENV) { if (CORBA::is_nil (this->consumer_admin_.in ())) return; this->supplier_proxy_ = - this->consumer_admin_->obtain_push_supplier (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->consumer_admin_->obtain_push_supplier (ACE_TRY_ENV); + ACE_CHECK; ACE_ConsumerQOS_Factory qos; qos.start_disjunction_group (); @@ -808,43 +809,43 @@ ECM_Consumer::connect (ACE_RANDR_TYPE &seed, qos.insert_type (federation->consumer_ipaddr (i), 0); } - RtecEventComm::PushConsumer_var objref = this->_this (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + RtecEventComm::PushConsumer_var objref = this->_this (ACE_TRY_ENV); + ACE_CHECK; this->supplier_proxy_->connect_push_consumer (objref.in (), qos.get_ConsumerQOS (), - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; } void -ECM_Consumer::disconnect (CORBA::Environment& TAO_IN_ENV) +ECM_Consumer::disconnect (CORBA::Environment& ACE_TRY_ENV) { if (CORBA::is_nil (this->supplier_proxy_.in ()) || CORBA::is_nil (this->consumer_admin_.in ())) return; - this->supplier_proxy_->disconnect_push_supplier (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->supplier_proxy_->disconnect_push_supplier (ACE_TRY_ENV); + ACE_CHECK; this->supplier_proxy_ = RtecEventChannelAdmin::ProxyPushSupplier::_nil (); } void -ECM_Consumer::close (CORBA::Environment &TAO_IN_ENV) +ECM_Consumer::close (CORBA::Environment &ACE_TRY_ENV) { - this->disconnect (TAO_IN_ENV); + this->disconnect (ACE_TRY_ENV); this->consumer_admin_ = RtecEventChannelAdmin::ConsumerAdmin::_nil (); } void ECM_Consumer::push (const RtecEventComm::EventSet& events, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) ACE_THROW_SPEC ((CORBA::SystemException)) { ACE_hrtime_t arrival = ACE_OS::gethrtime (); - this->federation_->consumer_push (arrival, events, TAO_IN_ENV); + this->federation_->consumer_push (arrival, events, ACE_TRY_ENV); } void @@ -885,7 +886,7 @@ ECM_Local_Federation::~ECM_Local_Federation (void) void ECM_Local_Federation::open (int event_count, RtecEventChannelAdmin::EventChannel_ptr ec, - CORBA::Environment& TAO_IN_ENV) + CORBA::Environment& ACE_TRY_ENV) { this->event_count_ = event_count; @@ -894,38 +895,38 @@ ECM_Local_Federation::open (int event_count, ACE_OS::strcpy (buf, this->federation_->name ()); ACE_OS::strcat (buf, "/supplier"); - this->supplier_.open (buf, ec, TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->supplier_.open (buf, ec, ACE_TRY_ENV); + ACE_CHECK; ACE_OS::strcpy (buf, this->federation_->name ()); ACE_OS::strcat (buf, "/consumer"); - this->consumer_.open (buf, ec, this->seed_, TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->consumer_.open (buf, ec, this->seed_, ACE_TRY_ENV); + ACE_CHECK; this->last_subscription_change_ = ACE_OS::gettimeofday (); } void -ECM_Local_Federation::close (CORBA::Environment &TAO_IN_ENV) +ECM_Local_Federation::close (CORBA::Environment &ACE_TRY_ENV) { - this->consumer_.close (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->consumer_.close (ACE_TRY_ENV); + ACE_CHECK; - this->supplier_.close (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->supplier_.close (ACE_TRY_ENV); + ACE_CHECK; } void ECM_Local_Federation::activate (RtecEventChannelAdmin::EventChannel_ptr ec, RtecEventComm::Time interval, - CORBA::Environment& TAO_IN_ENV) + CORBA::Environment& ACE_TRY_ENV) { - this->supplier_.activate (ec, interval, TAO_IN_ENV); + this->supplier_.activate (ec, interval, ACE_TRY_ENV); } void ECM_Local_Federation::supplier_timeout (RtecEventComm::PushConsumer_ptr consumer, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { RtecEventComm::EventSet sent (1); sent.length (1); @@ -949,14 +950,14 @@ ECM_Local_Federation::supplier_timeout (RtecEventComm::PushConsumer_ptr consumer if (this->event_count_ < 0) { - this->driver_->federation_has_shutdown (this, TAO_IN_ENV); + this->driver_->federation_has_shutdown (this, ACE_TRY_ENV); return; } int i = this->event_count_ % this->federation_->supplier_types (); s.header.type = this->federation_->supplier_ipaddr (i); - consumer->push (sent, TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + consumer->push (sent, ACE_TRY_ENV); + ACE_CHECK; this->send_count_++; @@ -972,10 +973,10 @@ ECM_Local_Federation::supplier_timeout (RtecEventComm::PushConsumer_ptr consumer ACE_DEBUG ((LM_DEBUG, "Reconfiguring federation %s: %f %f [%d]\n", this->name (), p, maxp, x)); - this->consumer_.disconnect (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); - this->consumer_.connect (this->seed_, TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->consumer_.disconnect (ACE_TRY_ENV); + ACE_CHECK; + this->consumer_.connect (this->seed_, ACE_TRY_ENV); + ACE_CHECK; this->last_subscription_change_ = ACE_OS::gettimeofday (); } } @@ -983,9 +984,9 @@ ECM_Local_Federation::supplier_timeout (RtecEventComm::PushConsumer_ptr consumer void ECM_Local_Federation::consumer_push (ACE_hrtime_t, const RtecEventComm::EventSet &event, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { - ACE_UNUSED_ARG (TAO_IN_ENV); + ACE_UNUSED_ARG (ACE_TRY_ENV); if (event.length () == 0) { @@ -1017,11 +1018,11 @@ ECM_Local_Federation::consumer_push (ACE_hrtime_t, void ECM_Local_Federation::open_receiver (RtecEventChannelAdmin::EventChannel_ptr ec, TAO_ECG_UDP_Out_Endpoint* ignore_from, - CORBA::Environment &TAO_IN_ENV) + CORBA::Environment &ACE_TRY_ENV) { RtecUDPAdmin::AddrServer_var addr_server = - this->federation_->addr_server (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->federation_->addr_server (ACE_TRY_ENV); + ACE_CHECK; ACE_Reactor* reactor = TAO_ORB_Core_instance ()->reactor (); @@ -1034,8 +1035,8 @@ ECM_Local_Federation::open_receiver (RtecEventChannelAdmin::EventChannel_ptr ec, reactor, expire_interval, max_timeouts, - TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + ACE_TRY_ENV); + ACE_CHECK; const int bufsize = 512; char buf[bufsize]; @@ -1046,8 +1047,8 @@ ECM_Local_Federation::open_receiver (RtecEventChannelAdmin::EventChannel_ptr ec, this->mcast_eh_.reactor (reactor); - this->mcast_eh_.open (ec, TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->mcast_eh_.open (ec, ACE_TRY_ENV); + ACE_CHECK; ACE_SupplierQOS_Factory qos; for (int i = 0; i < this->consumer_types (); ++i) @@ -1059,21 +1060,21 @@ ECM_Local_Federation::open_receiver (RtecEventChannelAdmin::EventChannel_ptr ec, RtecEventChannelAdmin::SupplierQOS qos_copy = qos.get_SupplierQOS (); - this->receiver_.open (qos_copy, TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->receiver_.open (qos_copy, ACE_TRY_ENV); + ACE_CHECK; } void -ECM_Local_Federation::close_receiver (CORBA::Environment &TAO_IN_ENV) +ECM_Local_Federation::close_receiver (CORBA::Environment &ACE_TRY_ENV) { - this->receiver_.close (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); - this->receiver_.shutdown (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); - this->mcast_eh_.close (TAO_IN_ENV); - TAO_CHECK_ENV_RETURN_VOID (TAO_IN_ENV); + this->receiver_.close (ACE_TRY_ENV); + ACE_CHECK; + this->receiver_.shutdown (ACE_TRY_ENV); + ACE_CHECK; + this->mcast_eh_.close (ACE_TRY_ENV); + ACE_CHECK; } void diff --git a/TAO/orbsvcs/tests/EC_Mcast/run_test.pl b/TAO/orbsvcs/tests/EC_Mcast/run_test.pl index b02a4118795..e9dd7a1b37f 100755 --- a/TAO/orbsvcs/tests/EC_Mcast/run_test.pl +++ b/TAO/orbsvcs/tests/EC_Mcast/run_test.pl @@ -10,9 +10,9 @@ require Process; # Run two copies of the same test... $T1 = Process::Create ($EXEPREFIX."EC_Mcast".$EXE_EXT, - " -c sample.cfg -n 200 -t 50000 -f Set02"); + " -c sample.cfg -n 100 -t 50000 -f Set02"); $T2 = Process::Create ($EXEPREFIX."EC_Mcast".$EXE_EXT, - " -c sample.cfg -n 200 -t 50000 -f Set02"); + " -c sample.cfg -n 100 -t 50000 -f Set02"); if ($T1->TimedWait (60) == -1) { print STDERR "ERROR: test1 timedout\n"; diff --git a/TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp b/TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp index 14bb1cbaaaf..04444d68621 100644 --- a/TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp +++ b/TAO/orbsvcs/tests/Event_Latency/Event_Latency.cpp @@ -10,9 +10,9 @@ #include "orbsvcs/Event_Utilities.h" #include "orbsvcs/Event_Service_Constants.h" -#include "orbsvcs/Scheduler_Factory.h" #include "orbsvcs/Time_Utilities.h" #include "orbsvcs/RtecEventChannelAdminC.h" +#include "orbsvcs/CosNamingC.h" #include "orbsvcs/Event/EC_Event_Channel.h" #include "orbsvcs/Event/EC_Basic_Factory.h" #include "Event_Latency.h" @@ -95,27 +95,8 @@ Latency_Consumer::open_consumer (RtecEventChannelAdmin::EventChannel_ptr ec, entry_point (my_name); TAO_TRY { - RtecScheduler::Scheduler_ptr server = - ACE_Scheduler_Factory::server (); - - rt_info_ = - server->create (my_name, TAO_TRY_ENV); - - const ACE_hrtime_t wcet_ns = ACE_UINT64_LITERAL (10000000); // 1 ms - RtecScheduler::Time wcet; - ORBSVCS_Time::hrtime_to_TimeT (wcet, wcet_ns); - - server->set (rt_info_, - RtecScheduler::VERY_HIGH_CRITICALITY, - wcet, - wcet, - ORBSVCS_Time::zero (), - 0, - RtecScheduler::VERY_LOW_IMPORTANCE, - ORBSVCS_Time::zero (), - 1, - RtecScheduler::OPERATION, - TAO_TRY_ENV); + // No scheduling for this test... + this->rt_info_ = 0; // Create the event that we're registering for. ACE_ConsumerQOS_Factory dependencies; @@ -414,26 +395,7 @@ Latency_Supplier::open_supplier (RtecEventChannelAdmin::EventChannel_ptr ec, this->channel_admin_ = RtecEventChannelAdmin::EventChannel::_duplicate (ec); - RtecScheduler::Scheduler_ptr server = - ACE_Scheduler_Factory::server (); - - this->rt_info_ = - server->create (name, TAO_TRY_ENV); - - RtecScheduler::Period_t period = timeout_interval * 20000; - - server->set (rt_info_, - RtecScheduler::VERY_HIGH_CRITICALITY, - ORBSVCS_Time::zero (), - ORBSVCS_Time::zero (), - ORBSVCS_Time::zero (), - period, - RtecScheduler::VERY_LOW_IMPORTANCE, - ORBSVCS_Time::zero (), - 1, - RtecScheduler::OPERATION, - TAO_TRY_ENV); - TAO_CHECK_ENV; + this->rt_info_ = 0; ACE_SupplierQOS_Factory publications; publications.insert (supplier_id_, @@ -690,11 +652,6 @@ Latency_Supplier::shutdown (void) // Disconnect from the push supplier. suppliers_->disconnect_push_supplier (TAO_TRY_ENV); TAO_CHECK_ENV; - - if (master_) - { - TAO_ORB_Core_instance ()->orb ()->shutdown (); - } } TAO_CATCHANY { @@ -888,8 +845,6 @@ main (int argc, char *argv []) CosNaming::NamingContext::_narrow (naming_obj.in (), TAO_TRY_ENV); TAO_CHECK_ENV; - ACE_Scheduler_Factory::use_config (naming_context.in ()); - if (get_options (argc, argv)) ACE_OS::exit (-1); @@ -971,7 +926,8 @@ main (int argc, char *argv []) ACE_ERROR_RETURN ((LM_ERROR, "generate_events failed.\n"), -1); } - orb->run (); + while (!shutting_down) + orb->perform_work (); for (i = 0; i < suppliers; ++i) { diff --git a/TAO/orbsvcs/tests/Event_Latency/run_test.pl b/TAO/orbsvcs/tests/Event_Latency/run_test.pl index 7276069ad2b..0c2eade7460 100755 --- a/TAO/orbsvcs/tests/Event_Latency/run_test.pl +++ b/TAO/orbsvcs/tests/Event_Latency/run_test.pl @@ -29,11 +29,11 @@ $ES = Process::Create ("..".$DIR_SEPARATOR ."..".$DIR_SEPARATOR ."Event_Service".$DIR_SEPARATOR ."Event_Service".$EXE_EXT, - "-ORBNameServiceIOR file://$NS_ior"); + "-ORBNameServiceIOR file://$NS_ior -t new"); sleep $sleeptime; -$TEST = Process::Create ($EXEPREFIX."Event_Latency".$EXE_EXT, +$TEST = Process::Create (".".$DIR_SEPARATOR."Event_Latency".$EXE_EXT, "-ORBNameServiceIOR file://$NS_ior" ." -j -m 100"); |