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?
 
......
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