shlex error in checking for processes in utils.py

RESOLVED FIXED

Status

Testing
Talos
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: Jeff Hammel, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

5 years ago
On linux:

PerfConfigurator --develop --executablePath
~/projects/mozilla/webapi/obj-x86_64-desktop/dist/bin/firefox
--activeTests tpaint --results_url file://${HOME}/talos.txt --output
tpaint_desktop.yml

talos -n tpaint_desktop.yml


This results in:

"""
RETURN:<a href =
"/home/volkmar/projects/mozilla/mozilla-central/rev/099592016bab">rev:099592016bab</a>
qm-pxp01: 
                Started Wed, 22 Aug 2012 16:37:16
Running test tpaint: 
             Started Wed, 22 Aug 2012 16:37:16
Traceback (most recent call last):
  File "/home/volkmar/projects/mozilla/talos/bin/talos", line 9, in
  <module>
    load_entry_point('talos==0.0', 'console_scripts', 'talos')()
  File "/home/volkmar/projects/mozilla/talos/talos/run_tests.py", line
  295, in main
    run_tests(parser)
  File "/home/volkmar/projects/mozilla/talos/talos/run_tests.py", line
  250, in run_tests
    talos_results.add(mytest.runTest(browser_config, test))
  File "/home/volkmar/projects/mozilla/talos/talos/ttest.py", line
  248, in runTest
    running_processes =
    self._ffprocess.checkAllProcesses(browser_config['process'],
    browser_config['child_process'])
  File "/home/volkmar/projects/mozilla/talos/talos/ffprocess.py", line
  45, in checkAllProcesses
    return self.ProcessesWithNames(process_name, child_process,
    "crashreporter", "talkback", "dwwin")
  File "/home/volkmar/projects/mozilla/talos/talos/ffprocess.py", line
  32, in ProcessesWithNames
    pids = self.GetPidsByName(process_name)
  File
  "/home/volkmar/projects/mozilla/talos/talos/ffprocess_linux.py",
  line 48, in GetPidsByName
    processes = utils.running_processes(process_name)
  File "/home/volkmar/projects/mozilla/talos/talos/utils.py", line
  222, in running_processes
    command = shlex.split(command)
  File "/usr/lib/python2.7/shlex.py", line 279, in split
    return list(lex)
  File "/usr/lib/python2.7/shlex.py", line 269, in next
    token = self.get_token()
  File "/usr/lib/python2.7/shlex.py", line 96, in get_token
    raw = self.read_token()
  File "/usr/lib/python2.7/shlex.py", line 172, in read_token
    raise ValueError, "No closing quotation"
ValueError: No closing quotation
"""

I have never personally seen this before.  We should at least catch
this error and print the command, as I can't even really guess what
the problem is from this traceback :(
(Reporter)

Comment 1

5 years ago
Created attachment 654538 [details] [diff] [review]
probable fix

this adds an additional filter to more efficiently ignore processes we don't care about and prints the command for debugging in the case of the case from comment 0 . So whether it is a 100% fix in practice is hard to say, but better.
Attachment #654538 - Flags: review?(jmaher)
Comment on attachment 654538 [details] [diff] [review]
probable fix

Review of attachment 654538 [details] [diff] [review]:
-----------------------------------------------------------------

I like the additional comments to clarify the code.
Attachment #654538 - Flags: review?(jmaher) → review+
(Reporter)

Comment 3

5 years ago
pushed to try: https://tbpl.mozilla.org/?tree=Try&rev=1b766d5cd282
(Reporter)

Comment 4

5 years ago
still two pending jobs but I'm going to call this green. pushed: http://hg.mozilla.org/build/talos/rev/38e088867f7b
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.