libvirt-cim-bounces@redhat.com wrote on 2008-09-04 14:53:21:

>
> libvirt-cim-bounces@redhat.com wrote on 2008-09-03 23:29:56:
>
> > >  > FAIL Test Summary:
> > >  > ComputerSystemIndication - 01_created_indication.py: FAIL
> > >  
> > >   Kaitlin - I remember you say that your follow patch will fix
> > > ComputerSystemIndication for KVM
> > >   several days ago, any update?
> >
> > Yes, those patches were checked in some time ago.
> >
> >
> > >  > --------------------------------------------------------------------
> > >  > ComputerSystemIndication - 01_created_indication.py: FAIL
> > >  > ERROR                  - Exception: not enough arguments for format
> > > string
> > >  > Got indication: KVM_ComputerSystemCreatedIndication
> > >  > ERROR                  - Received indication error: 256
> > >  > ERROR                  - Exception: not enough arguments for format
> > > string
> > >  > Got indication: KVM_ComputerSystemCreatedIndication
> > >  > ERROR                  - Received indication error: 256
> > >  > --------------------------------------------------------------------
> >
> > This looks like the test case encountered some kind of error, but it was
> > unable to print the error message because there weren't enough arguments
> > to format the string.
>
>   This fails when the test case wait for KVM_ComputerSystemModifiedIndication.
>   It passes if we only define a domain and check the indication,
> that is to say,
>   we can get KVM_ComputerSystemCreatedIndication, and test case fails on
>   KVM_ComputerSystemModifiedIndication although the domain started
> successfully.
>
>   Here is part of log error, we can't get expected pid for
> KVM_ComputerSystemModifiedIndication.
>   ERROR   - Received indication error: 256
>   ERROR   - Exception: not enough arguments for format string
>
>   Do you know why it is?


   One more thing, it passes for Pegasus.
>  
> ......
> def poll_for_ind(pid):
>     for i in range(0, 20):
>         pw = os.waitpid(pid, os.WNOHANG)
>
>         # If pid exits, waitpid returns [pid, return_code]
>         # If pid is still running, waitpid returns [0, 0]
>         # Only return a success if waitpid returns the expected pid
>         # and the return code is 0.
>         if pw[0] == pid and pw[1] == 0:
>             logger.info("Great, got indication successfuly")
>             status = PASS
>             break
>         elif pw[1] == 0 and i < 19:
>             if i % 10 == 0:
>                 logger.info("In child process, waiting for indication")
>             time.sleep(2)
>         else:
>             # Time is up and waitpid never returned the expected pid
>             if pw[0] != pid:
>                 logger.error("Waited too long for indication")
>                 os.kill(pid, signal.SIGKILL)
>             else:
>                 logger.error("Received indication error: %d" % pw[1])
>
>             status = FAIL
>             break
>
>     return status
> ......
> >
> > Can you take a look?
> >
> > Thanks!
> > --
> > Kaitlin Rupert
> > IBM Linux Technology Center
> > kaitlin@linux.vnet.ibm.com
> >
> > _______________________________________________
> > Libvirt-cim mailing list
> > Libvirt-cim@redhat.com
> > https://www.redhat.com/mailman/listinfo/libvirt-cim
> _______________________________________________
> Libvirt-cim mailing list
> Libvirt-cim@redhat.com
> https://www.redhat.com/mailman/listinfo/libvirt-cim