Summary: | ReplicationManager will not update the IOGR of every members if one of the members is down | ||
---|---|---|---|
Product: | TAO | Reporter: | Sebastien Roy <sroy> |
Component: | Fault Tolerance Service | Assignee: | Sebastien Roy <sroy> |
Status: | NEW --- | ||
Severity: | normal | ||
Priority: | P3 | ||
Version: | 1.4.1 | ||
Hardware: | x86 | ||
OS: | Windows 2000 |
Description
Sebastien Roy
2004-08-20 14:24:11 CDT
Hello, I also experimented with the FT part of TAO last week and had the same problem. In my opinion, the lines PortableGroup::TAO_UpdateObjectGroup_var uog = PortableGroup::TAO_UpdateObjectGroup::_unchecked_narrow ( info->member_); in distribute_iogr() should be the right code, because the invoked tao_update_object_group() is a pseudo method handled by the FT_ServerRequest_Interceptor. In method FT_ServerRequest_Interceptor::receive_request_service_contexts() the version is checked before tao_update_object_group() can update the version information. This leads to the "wrong version" problem. I think, that the first lines in the receive_request_service_contexts() method should be: CORBA::String_var op = ri->operation (ACE_ENV_SINGLE_ARG_PARAMETER); // No version check if we receive new version information if (ACE_OS::strcmp (op.in (), "tao_update_object_group") == 0) { return; } Kind regards, Clemens. to reporter, can you provide a regression test as reproducer? |