pulse-active-port-change crash when run test audio/speaker-headphone-plug-detection

Bug #1625926 reported by Jerry Kao
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Checkbox Provider - Base
Fix Released
High
Maciej Kisielewski

Bug Description

Title: pulse-active-port-change crash when run test audio/speaker-headphone-plug-detection

Summary:
When run test audio/speaker-headphone-plug-detection, pulse-active-port-change crash and job was failed.

Test system CRN7-DVT1-C2
CID 201608-25052

This issue also can be reproduced when run ./pulse-active-port-change sinks

Steps: run test audio/speaker-headphone-plug-detection

Expected results: audio/speaker-headphone-plug-detection can be run

Actual results: pulse-active-port-change crash when run audio/speaker-headphone-plug-detection

Additional information:
checkbox version

ii checkbox-converged 1.4.1~ppa~ubuntu16.04.1 all testing tool for all Ubuntu devices
ii checkbox-gui 1.2.4-0ubuntu1 all QML based interface for checkbox (transitional package)
ii checkbox-ng 0.28~ppa2~ubuntu16.04.1 all PlainBox based test runner
ii checkbox-ng-service 0.23~ppa~ubuntu16.04.1 all CheckBox D-Bus service (transitional package)
ii checkbox-oem-bug 1.10-1-ubuntu1 all Checkbox OEM bug
ii plainbox-provider-checkbox 0.30~ppa2~ubuntu16.04.1 amd64 CheckBox provider for PlainBox
ii python3-checkbox-ng 0.28~ppa2~ubuntu16.04.1 all PlainBox based test runner (Python 3 library)
ii python3-checkbox-support 0.27~ppa~ubuntu16.04.1 all collection of Python modules used by PlainBox providers

plainbox version

ii plainbox 0.30~ppa~ubuntu16.04.1 all toolkit for software and hardware integration testing
ii plainbox-glmark2-es2-meta 0.27~ppa1~ubuntu16.04.1 amd64 Meta-package to selectively install glmark2-es2
ii plainbox-insecure-policy 0.30~ppa~ubuntu16.04.1 all policykit policy required to use plainbox (insecure version)
ii plainbox-provider-certification-client 0.27~ppa1~ubuntu16.04.1 all Client Certification provider for Plainbox
ii plainbox-provider-checkbox 0.30~ppa2~ubuntu16.04.1 amd64 CheckBox provider for PlainBox
ii plainbox-provider-oem 0.34 all plainbox oem provider
ii plainbox-provider-oem-somerville 0.34 all plainbox oem provider for somerville
ii plainbox-provider-resource-generic 0.27~ppa~ubuntu16.04.1 amd64 CheckBox generic resource jobs provider
ii plainbox-provider-tpm2 1.0+bzr4394+pkg4+1~ubuntu16.04.1 all TPM 2.0 provider for PlainBox
ii python3-plainbox 0.30~ppa~ubuntu16.04.1 all toolkit for software and hardware testing (python3 module)

Image: somerville-xenial-amd64-20160624-2

CPU: Genuine Intel(R) CPU 0000 @ 2.70GHz (8x)

GPU:
00:02.0 VGA compatible controller: Intel Corporation Device 591b (rev 01)
01:00.0 VGA compatible controller: NVIDIA Corporation Device 1bb8 (rev a1)

Manufacturer: Dell Inc.

ProductName: Precision 7720

BiosVersion: 00.00.09

Related branches

Revision history for this message
Jerry Kao (jerry.kao) wrote :

Automatically attached

Changed in plainbox-provider-checkbox:
status: New → Confirmed
Revision history for this message
Jerry Kao (jerry.kao) wrote :
Revision history for this message
Jerry Kao (jerry.kao) wrote :
Revision history for this message
Jerry Kao (jerry.kao) wrote :
Changed in plainbox-provider-checkbox:
importance: Undecided → High
tags: added: ce-qa-concern
description: updated
description: updated
Jerry Kao (jerry.kao)
Changed in plainbox-provider-checkbox:
assignee: nobody → Pierre Equoy (pierre-equoy)
Revision history for this message
Pierre Equoy (pieq) wrote :

Similar issue happens on 201608-25039 when running the job or the related script:

$ ./pulse-active-port-change sinks
Traceback (most recent call last):
  File "./pulse-active-port-change", line 149, in <module>
    raise SystemExit(AudioPlugDetection.main())
  File "./pulse-active-port-change", line 107, in main
    return cls(ns.timeout, ns.mode).run()
  File "./pulse-active-port-change", line 120, in run
    initial_cfg = self.get_sound_config()
  File "./pulse-active-port-change", line 71, in get_sound_config
    doc = parse_pactl_output(text)
  File "/usr/lib/python3/dist-packages/checkbox_support/parsers/pactl.py", line 566, in parse_pactl_output
    return Document.Syntax.parseString(output, parseAll=True)[0]
  File "/usr/lib/python3/dist-packages/pyparsing.py", line 1125, in parseString
    raise exc
  File "/usr/lib/python3/dist-packages/pyparsing.py", line 1119, in parseString
    se._parse( instring, loc )
  File "/usr/lib/python3/dist-packages/pyparsing.py", line 1046, in _parseCache
    value = self._parseNoCache( instring, loc, doActions, callPreParse )
  File "/usr/lib/python3/dist-packages/pyparsing.py", line 989, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/lib/python3/dist-packages/pyparsing.py", line 2378, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/lib/python3/dist-packages/pyparsing.py", line 1046, in _parseCache
    value = self._parseNoCache( instring, loc, doActions, callPreParse )
  File "/usr/lib/python3/dist-packages/pyparsing.py", line 993, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/lib/python3/dist-packages/pyparsing.py", line 2183, in parseImpl
    raise ParseException(instring, loc, self.errmsg, self)
pyparsing.ParseException: Expected end of text (at char 2384), (line:68, col:1)

The output of `pactl list sinks` is attached.

Pierre Equoy (pieq)
Changed in plainbox-provider-checkbox:
assignee: Pierre Equoy (pierre-equoy) → Sylvain Pineau (sylvain-pineau)
Revision history for this message
Maciej Kisielewski (kissiel) wrote :

The bug is caused by pactl sometimes reporting volume with raw number and a percentage - with dB value missing. The parser expected all three.

Changed in plainbox-provider-checkbox:
assignee: Sylvain Pineau (sylvain-pineau) → Maciej Kisielewski (kissiel)
status: Confirmed → In Progress
Changed in plainbox-provider-checkbox:
status: In Progress → Fix Committed
Changed in plainbox-provider-checkbox:
milestone: none → 0.37.0
Changed in plainbox-provider-checkbox:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.