On 28 May 2014, at 4:36 pm, renayama19661...@ybb.ne.jp wrote:

> Hi Andrew,
> 
>> Perhaps try:
>> 
>> diff --git a/attrd/commands.c b/attrd/commands.c
>> index 7f1b4b0..7342e23 100644
>> --- a/attrd/commands.c
>> +++ b/attrd/commands.c
>> @@ -464,6 +464,15 @@ attrd_peer_update(crm_node_t *peer, xmlNode *xml, bool 
>> filter)
>> 
>>      a->changed |= changed;
>> 
>> +    if(changed) {
>> +        if(a->timer) {
>> +            crm_trace("Delayed write out (%dms) for %s", a->timeout_ms, 
>> a->id);
>> +            mainloop_timer_start(a->timer);
>> +        } else {
>> +            write_or_elect_attribute(a);
>> +        }
>> +    }
>> +
>>      /* this only involves cluster nodes. */
>>      if(v->nodeid == 0 && (v->is_remote == FALSE)) {
>>          if(crm_element_value_int(xml, F_ATTRD_HOST_ID, (int*)&v->nodeid) == 
>> 0) {
>> @@ -476,15 +485,6 @@ attrd_peer_update(crm_node_t *peer, xmlNode *xml, bool 
>> filter)
>>              }
>>          }
>>      }
>> -
>> -    if(changed) {
>> -        if(a->timer) {
>> -            crm_trace("Delayed write out (%dms) for %s", a->timeout_ms, 
>> a->id);
>> -            mainloop_timer_start(a->timer);
>> -        } else {
>> -            write_or_elect_attribute(a);
>> -        }
>> -    }
>> }
>> 
>> void
> 
> Okay!
> I confirm movement.

"movement" == it works as expected now? or that you're going to check :)

> 
> Many Thanks!
> Hideo Yamauchi.
> 
> --- On Wed, 2014/5/28, Andrew Beekhof <and...@beekhof.net> wrote:
> 
>> 
>> On 28 May 2014, at 4:10 pm, Andrew Beekhof <and...@beekhof.net> wrote:
>> 
>>> 
>>> On 28 May 2014, at 3:04 pm, renayama19661...@ybb.ne.jp wrote:
>>> 
>>>> Hi Andrew,
>>>> 
>>>>>> I'd expect that block to hit this clause though:
>>>>>> 
>>>>>>      } else if(mainloop_timer_running(a->timer)) {
>>>>>>         crm_info("Write out of '%s' delayed: timer is running", a->id);
>>>>>>         return;
>>>>> 
>>>>> Which point of the source code does the suggested code mentioned above 
>>>>> revise?
>>>>> (Which line of the source code is it?)
>>>> 
>>>> Is it the next cord that you pointed?
>>> 
>>> right
>>> 
>>>> 
>>>> void
>>>> write_attribute(attribute_t *a)
>>>> {
>>>>    int updates = 0;
>>>> (snip)
>>>>    } else if(mainloop_timer_running(a->timer)) {
>>>>        crm_info("Write out of '%s' delayed: timer is running", a->id);
>>>>        return;
>>>>    }
>>>> (snip)
>>>> 
>>>> At the time of phenomenon of the problem, the timer does not yet block it 
>>>> by this processing because it does not start.
>>> 
>>> Thats the curious part
>> 
>> Perhaps try:
>> 
>> diff --git a/attrd/commands.c b/attrd/commands.c
>> index 7f1b4b0..7342e23 100644
>> --- a/attrd/commands.c
>> +++ b/attrd/commands.c
>> @@ -464,6 +464,15 @@ attrd_peer_update(crm_node_t *peer, xmlNode *xml, bool 
>> filter)
>> 
>>      a->changed |= changed;
>> 
>> +    if(changed) {
>> +        if(a->timer) {
>> +            crm_trace("Delayed write out (%dms) for %s", a->timeout_ms, 
>> a->id);
>> +            mainloop_timer_start(a->timer);
>> +        } else {
>> +            write_or_elect_attribute(a);
>> +        }
>> +    }
>> +
>>      /* this only involves cluster nodes. */
>>      if(v->nodeid == 0 && (v->is_remote == FALSE)) {
>>          if(crm_element_value_int(xml, F_ATTRD_HOST_ID, (int*)&v->nodeid) == 
>> 0) {
>> @@ -476,15 +485,6 @@ attrd_peer_update(crm_node_t *peer, xmlNode *xml, bool 
>> filter)
>>              }
>>          }
>>      }
>> -
>> -    if(changed) {
>> -        if(a->timer) {
>> -            crm_trace("Delayed write out (%dms) for %s", a->timeout_ms, 
>> a->id);
>> -            mainloop_timer_start(a->timer);
>> -        } else {
>> -            write_or_elect_attribute(a);
>> -        }
>> -    }
>> }
>> 
>> void
>> 
>> 
>> 
>> 

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

_______________________________________________
Pacemaker mailing list: Pacemaker@oss.clusterlabs.org
http://oss.clusterlabs.org/mailman/listinfo/pacemaker

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org

Reply via email to