Re: Event delivery issue after Provider Crash
Arunkumar S <[email protected]> Mon, 17 Nov 2014 18:05:53 -0800
| Newsgroups | gmane.network.open-pegasus.general |
|---|---|
| Message-ID | <CAO-MqpRom1KPG+ymoHetRnwRfXQ7C8Nis9WPRQ7zbWnga4eSpQ@mail.gmail.com> |
--089e0122a0d8f2a75b0508188893 Content-Type: text/plain; charset=ISO-8859-1 Hi Karl et al., Thanks for your inputs. Actually, I am trying to unit test my provider against provider crash. The test objective is to ensure that Events are delivered properly, once provider is restarted by cimserver after its first crash, as per PEP*#:* 360 https://collaboration.opengroup.org/pegasus/pp/documents/25003/PEP360_PLI_Ver1_2.html The steps: 1. Induce the provider to have NULL pointer Crash for a specific invokeMethod operation and get message "Lost connection with cimprovagt ..." 2. Generate a hardware event 3. Check whether the CIM Client - Event listener is able to receive that event or not. Having looked at the Pegasus and my provider log, I have confirmed that the provider is getting crashed and then restarted by cimserver, but subsequently the event delivery is failing. The CMPI method - CBDeliverIndication for Event delivery is failing. My provider has all capabilities combined - Instance, Association, Method and Indication. maxFailedProviderModuleRestarts is set to default value =3 Do I need to enable any specific CIM attribute or cimconfig parameter. ? Thanks, Arun On Mon, Nov 17, 2014 at 5:54 AM, Karl Schopmeyer <[email protected]> wrote: > Here is an example of a script that would allow running just some oop > providers under valgrind > > #!/bin/sh > ## Original Author: Tim Potter > # move cimprovagt to cimprovagt.real > # move this file to cimprovagt > # > # mv /usr/sbin/cimprovagt /usr/sbin/cimprovagt.real > # cp cimprovagt.wrapper /usr/sbin/cimprovagt > > ## By default the script doesn't call valgrind - enable it by > ## creating a semaphore file of the form /tmp/$MODULE.valgrind where module > ## is the module name in the output of "cimprovider -l". > > ## Or create a file /tmp/LogAll.valgrind which valgrinds all providers. > > module=$5 > > VALGRIND_ARGS="--leak-check=yes --trace-children=yes > --log-file=/tmp/$module.valgrind" > > if [ -e /tmp/$module.valgrind -o -e /tmp/LogAll.valgrind ]; then > exec /usr/bin/valgrind $VALGRIND_ARGS \ > /usr/sbin/cimprovagt.real "$@" > else > exec /usr/sbin/cimprovagt.real "$@" > fi > > On 11/16/2014 10:52 PM, Arunkumar S wrote: > >> Hi, >> >> My provider is encountering a crash occasionally. The CIM server >> automatically restarts the provider process. But the events are not >> delivered after the provider restart. >> >> I have confirmed using cimsub that the event subscription is active. But >> even then, the events are not delivered to the target system. >> >> But, If I restart the entire cimserver altogether, I can get the event >> delivered. >> >> Thanks, >> Arun >> >> >> >> > --089e0122a0d8f2a75b0508188893 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Hi Karl et al.,<div><br></div><div>Thanks for your inputs.= <br><div><br></div><div>Actually, I am trying to unit test my provider agai= nst provider crash.=A0</div><div><br></div><div>The test objective is to en= sure that Events are delivered properly, once provider is restarted by cims= erver after its first crash, as per PEP<b style=3D"color:rgb(0,0,0);font-fa= mily:'Times New Roman';font-size:medium">#:</b><span style=3D"color= :rgb(0,0,0);font-family:'Times New Roman';font-size:medium">=A0360<= /span></div><div><a href=3D"https://collaboration.opengroup.org/pegasus/pp/= documents/25003/PEP360_PLI_Ver1_2.html">https://collaboration.opengroup.org= /pegasus/pp/documents/25003/PEP360_PLI_Ver1_2.html</a></div><div><br></div>= <div>The steps:</div><div>1. Induce the provider to have NULL pointer Crash= for a specific invokeMethod operation and get message "<span style=3D= "color:rgb(0,0,0);font-family:'Times New Roman';font-size:medium">L= ost connection with cimprovagt ..."</span><br></div><div>2. Generate a= hardware event</div><div>3. Check whether the CIM Client - Event listener = is able to receive that event or not.=A0</div><div><br></div><div>Having lo= oked at the Pegasus and my provider log, =A0 I have confirmed that the prov= ider is getting crashed and then restarted by cimserver, but subsequently t= he event delivery is failing.=A0</div><div>The CMPI method -=A0<span style= =3D"color:rgb(84,84,84);font-family:arial,sans-serif;font-weight:bold;line-= height:14.5600004196167px">CBDeliverIndication for Event delivery is failin= g. =A0</span><br></div><div><div><span style=3D"color:rgb(0,0,0);font-famil= y:'Times New Roman';font-size:medium"><br></span></div><div>My prov= ider has all capabilities combined - Instance, Association, Method and Indi= cation.=A0</div><div><span style=3D"color:rgb(0,0,0);font-family:'Times= New Roman';font-size:medium">maxFailedProviderModuleRestarts is set to= default value =3D3</span></div><div><span style=3D"color:rgb(0,0,0);font-f= amily:'Times New Roman';font-size:medium"><br></span></div><div>Do = I need to enable any specific CIM attribute or cimconfig parameter. ?</div>= </div><div><br></div><div>Thanks,</div><div>Arun</div></div></div><div clas= s=3D"gmail_extra"><br><div class=3D"gmail_quote">On Mon, Nov 17, 2014 at 5:= 54 AM, Karl Schopmeyer <span dir=3D"ltr"><<a href=3D"mailto:k.schopmeyer= @swbell.net" target=3D"_blank">[email protected]</a>></span> wrote= :<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-le= ft:1px #ccc solid;padding-left:1ex">Here is an example of a script that wou= ld allow running just some oop providers under valgrind<br> <br> #!/bin/sh<br> ## Original Author: Tim Potter<br> # move cimprovagt to cimprovagt.real<br> # move this file to cimprovagt<br> #<br> # mv /usr/sbin/cimprovagt /usr/sbin/cimprovagt.real<br> # cp cimprovagt.wrapper /usr/sbin/cimprovagt<br> <br> ## By default the script doesn't call valgrind - enable it by<br> ## creating a semaphore file of the form /tmp/$MODULE.valgrind where module= <br> ## is the module name in the output of "cimprovider -l".<br> <br> ## Or create a file /tmp/LogAll.valgrind which valgrinds all providers.<br> <br> module=3D$5<br> <br> VALGRIND_ARGS=3D"--leak-check=3D<u></u>yes --trace-children=3Dyes --lo= g-file=3D/tmp/$module.<u></u>valgrind"<br> <br> if [ -e /tmp/$module.valgrind -o -e /tmp/LogAll.valgrind ]; then<br> =A0 =A0 =A0 =A0 exec /usr/bin/valgrind $VALGRIND_ARGS \<br> =A0 =A0 =A0 =A0 /usr/sbin/cimprovagt.real "$@"<br> else<br> =A0 =A0 =A0 =A0 exec /usr/sbin/cimprovagt.real "$@"<br> fi<span class=3D"im HOEnZb"><br> <br> On 11/16/2014 10:52 PM, Arunkumar S wrote:<br> </span><div class=3D"HOEnZb"><div class=3D"h5"><blockquote class=3D"gmail_q= uote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1e= x"> Hi,<br> <br> My provider is encountering a crash occasionally.=A0 The CIM server automat= ically restarts the provider process. But the events are not delivered afte= r the provider restart.<br> <br> I have confirmed using cimsub that the event subscription is active. But ev= en then, the events are not delivered to the target system.<br> <br> But, If I restart the entire cimserver altogether, I can get the event deli= vered.<br> <br> Thanks,<br> Arun<br> <br> <br> <br> </blockquote> <br> </div></div></blockquote></div><br></div> --089e0122a0d8f2a75b0508188893--