Re: [devel] [PATCH 1 of 1] amfd: do not flush imm jobs on active controller[#2016]

2016-09-20 Thread minh chau
Hi Praveen,

ack for code review.

Thanks,
Minh

On 09/09/16 22:15, praveen.malv...@oracle.com wrote:
>   osaf/services/saf/amf/amfd/imm.cc |  2 +-
>   1 files changed, 1 insertions(+), 1 deletions(-)
>
>
> AMF pushes IMM updates in a queue to be updated after finishing main job.
> currently, standby amfd as a applier flushes job queue if number of elements
> reaches to 200. Since check is on implementer status, active controller may
> flush it when it loses implementer status and goes for reinit with IMM(one 
> case
> is when IMM returns BAD_HANDLE, a rare case).
>
> Patch checks the role of amfd besides implemeter status before flusing the
> job queue.
>
> diff --git a/osaf/services/saf/amf/amfd/imm.cc 
> b/osaf/services/saf/amf/amfd/imm.cc
> --- a/osaf/services/saf/amf/amfd/imm.cc
> +++ b/osaf/services/saf/amf/amfd/imm.cc
> @@ -385,7 +385,7 @@ AvdJobDequeueResultT Fifo::execute(SaImm
>   if (!avd_cb->active_services_exist)
>   return JOB_ETRYAGAIN;
>   
> - if (!avd_cb->is_implementer) {
> + if ((!avd_cb->is_implementer) && (avd_cb->avail_state_avd == 
> SA_AMF_HA_STANDBY)) {
>   check_and_flush_job_queue_standby_amfd();
>   return JOB_EINVH;
>   }
>


--
___
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel


[devel] [PATCH 1 of 1] amfd: do not flush imm jobs on active controller[#2016]

2016-09-09 Thread praveen . malviya
 osaf/services/saf/amf/amfd/imm.cc |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


AMF pushes IMM updates in a queue to be updated after finishing main job.
currently, standby amfd as a applier flushes job queue if number of elements
reaches to 200. Since check is on implementer status, active controller may
flush it when it loses implementer status and goes for reinit with IMM(one case
is when IMM returns BAD_HANDLE, a rare case).

Patch checks the role of amfd besides implemeter status before flusing the
job queue.

diff --git a/osaf/services/saf/amf/amfd/imm.cc 
b/osaf/services/saf/amf/amfd/imm.cc
--- a/osaf/services/saf/amf/amfd/imm.cc
+++ b/osaf/services/saf/amf/amfd/imm.cc
@@ -385,7 +385,7 @@ AvdJobDequeueResultT Fifo::execute(SaImm
if (!avd_cb->active_services_exist)
return JOB_ETRYAGAIN;
 
-   if (!avd_cb->is_implementer) {
+   if ((!avd_cb->is_implementer) && (avd_cb->avail_state_avd == 
SA_AMF_HA_STANDBY)) {
check_and_flush_job_queue_standby_amfd();
return JOB_EINVH;
}

--
___
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel