summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp
diff options
context:
space:
mode:
authorPhil Mesnier <mesnierp@ociweb.com>2016-03-03 16:55:46 -0600
committerPhil Mesnier <mesnierp@ociweb.com>2016-03-04 10:14:59 -0600
commitf68ad1ebb25927d2b6650091f3bc23ae6888a495 (patch)
tree002a02dc67f6bed1fec3a1e8b3d8ab35538097b9 /TAO/orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp
parent80f4315eb1314ccdc47052f07c882a45a60fa10b (diff)
downloadATCD-f68ad1ebb25927d2b6650091f3bc23ae6888a495.tar.gz
Bring over recent fixes and enhancements to the FaultTolerant / LoadBalancing naming service extension from OCI's TAO release.
Fixes deadlocks that could occur as a result of file access errors, such as the transient "bad file decriptor" (ebadf) error that seems to pop up fairly regularly when using NFS. Also optimized the file locking strategy to not always setting to MODIFY access state, which then required a file update on every access
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp')
-rw-r--r--TAO/orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/TAO/orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp b/TAO/orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp
index d68c41bbaef..18b25ceb638 100644
--- a/TAO/orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp
+++ b/TAO/orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp
@@ -502,7 +502,7 @@ TAO::PG_Object_Group::increment_version (void)
if (TAO_debug_level > 3)
{
ORBSVCS_DEBUG ((LM_DEBUG,
- ACE_TEXT ("%T %n (%P|%t) - Setting IOGR version to %u\n"),
+ ACE_TEXT ("TAO (%P|%t) PG_Object_Group::increment_version now %u\n"),
static_cast<unsigned> (this->tagged_component_.object_group_ref_version)
));
}
@@ -868,7 +868,7 @@ TAO::PG_Object_Group::initial_populate (void)
PortableGroup::InitialNumberMembersValue initial_number_members =
this->get_initial_number_members ();
- if (((PortableGroup::InitialNumberMembersValue)this->members_.current_size ()) < initial_number_members)
+ if (this->members_.current_size () < initial_number_members)
{
this->create_members (initial_number_members);
}
@@ -880,11 +880,11 @@ TAO::PG_Object_Group::minimum_populate (void)
{
ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->internals_);
- if ( this->get_membership_style () == PortableGroup::MEMB_INF_CTRL)
+ if ( this->get_membership_style () == PortableGroup::MEMB_INF_CTRL )
{
PortableGroup::MinimumNumberMembersValue minimum_number_members =
this->get_minimum_number_members ();
- if (((PortableGroup::InitialNumberMembersValue)members_.current_size ()) < minimum_number_members)
+ if (members_.current_size () < minimum_number_members)
{
this->create_members (minimum_number_members);
}
@@ -932,4 +932,3 @@ TAO::PG_Object_Group::clear_members_map (void)
}
TAO_END_VERSIONED_NAMESPACE_DECL
-