diff options
author | huangming <huangminghuang@users.noreply.github.com> | 2003-11-24 20:45:17 +0000 |
---|---|---|
committer | huangming <huangminghuang@users.noreply.github.com> | 2003-11-24 20:45:17 +0000 |
commit | 5841034e3bce3cd8e9649b341c632f4a5142983a (patch) | |
tree | 4eb574fbdffba5a1e409ef52472630c21ae73c63 | |
parent | ab491aef6976442ff1ee23a9368f72cbdf8e6d95 (diff) | |
download | ATCD-5841034e3bce3cd8e9649b341c632f4a5142983a.tar.gz |
Fixed throwing TransactionDepthTooHigh for unsubscription requests
3 files changed, 19 insertions, 3 deletions
diff --git a/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/Basic_Replication_Strategy.cpp b/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/Basic_Replication_Strategy.cpp index f27830b9928..7c5988f3674 100644 --- a/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/Basic_Replication_Strategy.cpp +++ b/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/Basic_Replication_Strategy.cpp @@ -106,7 +106,7 @@ Basic_Replication_Strategy::replicate_request( } } else if (transaction_depth > 1) { - TAO_FTRTEC::Log(3, "Throwing FTRT::OutOfSequence\n"); + TAO_FTRTEC::Log(3, "Throwing FTRT::TransactionDepthTooHigh\n"); ACE_THROW(FTRT::TransactionDepthTooHigh()); } } diff --git a/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxyConsumer.cpp b/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxyConsumer.cpp index 70989ce1c9f..24f4cabafc8 100644 --- a/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxyConsumer.cpp +++ b/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxyConsumer.cpp @@ -106,7 +106,15 @@ void TAO_FTEC_ProxyPushConsumer::disconnect_push_consumer (ACE_ENV_SINGLE_ARG_DE FTRTEC::Replication_Service* svc = FTRTEC::Replication_Service::instance(); ACE_Read_Guard<FTRTEC::Replication_Service> locker(*svc); - svc->replicate_request(update, 0 ACE_ENV_ARG_PARAMETER); + ACE_TRY { + svc->replicate_request(update, 0 ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; + } + ACE_CATCHALL { + /// we do not propagate the exception of unsubscription messages because client + /// can do nothing about it. + } + ACE_ENDTRY; ACE_CHECK; } diff --git a/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxySupplier.cpp b/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxySupplier.cpp index 73028aef83c..12354a54bfc 100644 --- a/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxySupplier.cpp +++ b/TAO/orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxySupplier.cpp @@ -108,7 +108,15 @@ void TAO_FTEC_ProxyPushSupplier::disconnect_push_supplier (ACE_ENV_SINGLE_ARG_DE ACE_Read_Guard<FTRTEC::Replication_Service> locker(*svc); - svc->replicate_request(update, 0 ACE_ENV_ARG_PARAMETER); + ACE_TRY { + svc->replicate_request(update, 0 ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; + } + ACE_CATCHALL { + /// we do not propagate the exception of unsubscription messages because client + /// can do nothing about it. + } + ACE_ENDTRY; ACE_CHECK; } |