- **status**: assigned --> accepted
- **Part**: lib --> nd
- **Milestone**: 4.7.2 --> 5.1.RC2
- **Comment**:
Applicable to other red models also. After setting activeCompName in standby
descriptor, AMFND is wronlgly calling osaf_extended_name_clear() for active
descriptor. Since SaAmfCSIStateDescriptorT is a union, it clears the filled
value.
But besides the reported problem there are others also:
-AMFND is copying activecompNmae using osaf_extended_name_alloc()
activecompName in agent message, only when it is an extended name. This should
be done irrespective of short or long dn.
-Agent should perform validation check on dn based on HA state of the CSI SET
callback, as activecompname is not populated for all the HA states.
-When I try to fix above problem, I see one more problem: a standby component
gets its own name in the standby callback. There is a minor regression at AMFD.
I will send out a pach that will fix all these problems.
.
---
** [tickets:#2021] AMF : active compname is improperly populated in Standby
callback (NPM)**
**Status:** accepted
**Milestone:** 5.1.RC2
**Created:** Sat Sep 10, 2016 06:52 AM UTC by Srikanth R
**Last Updated:** Wed Sep 14, 2016 08:51 AM UTC
**Owner:** Praveen
For an application with NPM model, active compName in the standby descriptor
is having corrupted value in the standby callback.
Breakpoint 1, pycbk_SaAmfCSISetCallbackT (invocation=4287627278,
compName=0x941a28, haState=SA_AMF_HA_STANDBY, csiDescriptor=...) at
saAmf_wrap.c:2914
2914 saAmf_wrap.c: No such file or directory.
(gdb) p csiDescriptor
$1 = {csiFlags = 1, csiName = {length = 48, value =
"safCsi=CSI1,safSi=TestApp_SI4,safApp=TestApp_Npm", '\000' <repeats 207
times>}, csiStateDescriptor = {activeDescriptor = {transitionDescriptor =
1634926660,
activeCompName = {length = 0, value =
"\000mp=CO\000\000\000\000\000\000\000\000u=TestApp_SU2,safSg=TestApp_SG1,safApp=TestApp_Npm",
'\000' <repeats 191 times>}}, standbyDescriptor = {activeCompName = {
length = 68, value =
"**sa\000\000\000mp=CO\000\000\000\000\000\000\000\000u=TestApp_SU2,safSg=TestApp_SG1,safApp=TestApp_Npm**",
'\000' <repeats 187 times>}, standbyRank = 0}}, csiAttr = {attr = 0x7642a0,
number = 1}}
In the above callback ( in gdb ), the active component name in standby
descriptor in standby callback should be
safComp=COMP1,safSu=TestApp_SU3,safSg=TestApp_SG1,safApp=TestApp_Npm, but it
is populated with improper value :
sa\000\000\000mp=CO\000\000\000\000\000\000\000\000u=TestApp_SU2,safSg=TestApp_SG1,safApp=TestApp_Npmapo
---
Sent from sourceforge.net because opensaf-tickets@lists.sourceforge.net is
subscribed to https://sourceforge.net/p/opensaf/tickets/
To unsubscribe from further messages, a project admin can change settings at
https://sourceforge.net/p/opensaf/admin/tickets/options. Or, if this is a
mailing list, you can unsubscribe from the mailing list.
------------------------------------------------------------------------------
_______________________________________________
Opensaf-tickets mailing list
Opensaf-tickets@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets