Suppose if the entry retrieved form subscription table is of | 0
osaf/libs/core/mds/mds_c_sndrcv.c | 8 +++++++-
2 files changed, 7 insertions(+), 1 deletions(-)
While sending Mcast message , only ONE fist entry of to_svc_id entry is
used/picked form subscription table and its architecture is used to do send
Full encode or Falt encode .
In case of mixed architecture cluster, there is possibility of to_svc_id
entry can be randomly
different architecture or same architecture. Suppose if the entry retrieved
form subscription table is of
type the Mcast message is getting sent as Flat encode
because of that the different architecture nodes not able to receive the Mcast
message as they expect Full encode message.
Now Mcast message is always sent as Full encode (DESTINATION_OFF_NODE ).
diff --git a/osaf/libs/core/mds/mds_c_sndrcv.c
b/osaf/libs/core/mds/mds_c_sndrcv.c
--- a/osaf/libs/core/mds/mds_c_sndrcv.c
+++ b/osaf/libs/core/mds/mds_c_sndrcv.c
@@ -3855,7 +3855,13 @@ static uint32_t mcm_pvt_process_svc_bcas
break;
}
- mcm_query_for_node_dest_on_archword(info_result->key.adest,
&to, info_result->rem_svc_arch_word);
+ /* If Mcast allwasy send full encode */
+ if ((svc_cb->subtn_info->prev_ver_sub_count == 0) &&
(strcmp(tipc_or_tcp, "TIPC") == 0)
+ && (to_msg.data.info.len <
MDS_DIRECT_BUF_MAXSIZE)) {
+ to = DESTINATION_OFF_NODE;
+ } else {
+
mcm_query_for_node_dest_on_archword(info_result->key.adest, &to,
info_result->rem_svc_arch_word);
+ }
if (to == DESTINATION_SAME_PROCESS) {
if (to_msg.msg_type != MSG_NCSCONTEXT) {
------------------------------------------------------------------------------
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel