Closed Bug 1585289 Opened 2 months ago Closed Last month

Move any raptor related command from setup_talos to setup_raptor from taskcluster/taskgraph/transforms/tests.py

Categories

(Testing :: Raptor, defect, P1)

Version 3
defect

Tracking

(firefox71 fixed)

RESOLVED FIXED
mozilla71
Tracking Status
firefox71 --- fixed

People

(Reporter: Bebe, Assigned: Bebe)

Details

Attachments

(1 file)

This is causing issue when setting up raptor desktop cold load tests

UnboundLocalError: local variable 'extra_options' referenced before assignment

  File "/home/alexandru.ionescu/workspace/mozilla-central/tools/tryselect/mach_commands.py", line 310, in try_fuzzy
    return self.run(**kwargs)
  File "/home/alexandru.ionescu/workspace/mozilla-central/tools/tryselect/mach_commands.py", line 182, in run
    return mod.run(**kwargs)
  File "/home/alexandru.ionescu/workspace/mozilla-central/tools/tryselect/selectors/fuzzy.py", line 243, in run
    tg = generate_tasks(parameters, full)
  File "/home/alexandru.ionescu/workspace/mozilla-central/tools/tryselect/tasks.py", line 107, in generate_tasks
    tg_full = generate('full_task_set')
  File "/home/alexandru.ionescu/workspace/mozilla-central/tools/tryselect/tasks.py", line 97, in generate
    tg = getattr(generator, attr)
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/generator.py", line 141, in full_task_set
    return self._run_until('full_task_set')
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/generator.py", line 351, in _run_until
    k, v = self._run.next()
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/generator.py", line 263, in _run
    new_tasks = kind.load_tasks(parameters, list(all_tasks.values()))
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/generator.py", line 77, in load_tasks
    for task_dict in transforms(trans_config, inputs)]
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1998, in check_run_task_caches
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1939, in check_task_dependencies
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1927, in check_task_identifiers
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1910, in chain_of_trust
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1748, in build_task
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1718, in add_index_routes
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1452, in validate
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1429, in task_name_from_label
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1389, in set_defaults
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/task.py", line 1368, in set_implementation
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/coalesce.py", line 29, in enable_coalescing
    for job in jobs:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/job/__init__.py", line 264, in make_task_description
    for job in jobs:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/job/__init__.py", line 186, in use_fetches
    for job in jobs:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/job/__init__.py", line 138, in set_implementation
    for job in jobs:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/job/__init__.py", line 118, in rewrite_when_to_optimization
    for job in jobs:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/base.py", line 75, in __call__
    for task in tasks:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1437, in make_job_description
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1375, in set_worker_type
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1361, in single_stylo_traversal_tests
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1350, in set_test_type
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1342, in set_tag
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1330, in set_profile
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1316, in set_retry_exit_status
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1305, in set_schedules_for_webrender_android
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1291, in enable_webrender
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1276, in allow_software_gl_layers
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1234, in split_chunks
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1206, in split_e10s
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1187, in ensure_spi_disabled_on_all_but_spi
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1161, in enable_fission_on_central
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1128, in split_variants
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1120, in handle_run_on_projects
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1055, in enable_code_coverage
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 1045, in disable_fennec_e10s
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 928, in setup_browsertime
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 916, in handle_keyed_by
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 883, in set_download_symbols
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 869, in set_expires_after
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 807, in set_tier
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 776, in set_treeherder_machine_platform
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 733, in set_target
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 723, in handle_artifact_prefix
    for test in tests:
HERE >>>>>>>>>
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 704, in setup_browsertime_flag
<<<<<<<< HERE
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 648, in setup_raptor
    for test in tests:
  File "/home/alexandru.ionescu/workspace/mozilla-central/taskcluster/taskgraph/transforms/tests.py", line 639, in setup_talos
    extra_options.append('--add-option')
Assignee: nobody → fstrugariu
Status: NEW → ASSIGNED
Priority: -- → P1

I retested this and it looks like we have issues on raptor.

:nalexander :rwood can you offer some guidence on the scope of --setpref gfx.direct2d.disabled=true introduced in Bug 1458638

Context from perfherder:
Ran the raptor tests again after a rebase and we have a perma fail on Windows 7 opt:

https://treeherder.mozilla.org/#/jobs?repo=try&revision=63cee4b978278660880df2d064b5ed06709f379e

Looks like raptor is not expecting: --setpref gfx.direct2d.disabled=true

[task 2019-10-04T08:25:11.871Z] 08:25:11     INFO - Calling ['C:\\Users\\task_1570166048\\build\\venv\\Scripts\\python', u'C:\\Users\\task_1570166048\\build\\tests\\raptor\\raptor\\raptor.py', '--setpref', 'gfx.direct2d.disabled=true', u'--test', 'raptor-tp6-cold-4', u'--binary', 'C:\\Users\\task_1570166048\\build\\application\\firefox\\firefox.exe', u'--app', u'firefox', u'--symbolsPath', u'https://queue.taskcluster.net/v1/task/Ji7Vfr_DR1eFECSBFcEV-Q/artifacts/public/build/target.crashreporter-symbols.zip', u'--log-tbpl-level=debug'] with output_timeout 3600
[task 2019-10-04T08:25:12.195Z] 08:25:12     INFO -  usage: raptor.py [-h] -t TEST
[task 2019-10-04T08:25:12.195Z] 08:25:12     INFO -                   [--app {geckoview,firefox,fenix,chrome,refbrow,chromium,fennec}]
[task 2019-10-04T08:25:12.195Z] 08:25:12     INFO -                   [-b BINARY] [-a ACTIVITY] [-i INTENT] [--host HOST]
[task 2019-10-04T08:25:12.195Z] 08:25:12     INFO -                   [--power-test] [--memory-test] [--cpu-test]
[task 2019-10-04T08:25:12.195Z] 08:25:12     INFO -                   [--is-release-build] [--gecko-profile]
[task 2019-10-04T08:25:12.195Z] 08:25:12     INFO -                   [--gecko-profile-entries GECKO_PROFILE_ENTRIES]
[task 2019-10-04T08:25:12.196Z] 08:25:12     INFO -                   [--gecko-profile-interval GECKO_PROFILE_INTERVAL]
[task 2019-10-04T08:25:12.196Z] 08:25:12     INFO -                   [--gecko-profile-thread GECKO_PROFILE_THREADS]
[task 2019-10-04T08:25:12.196Z] 08:25:12     INFO -                   [--symbolsPath SYMBOLS_PATH] [--page-cycles PAGE_CYCLES]
[task 2019-10-04T08:25:12.196Z] 08:25:12     INFO -                   [--page-timeout PAGE_TIMEOUT]
[task 2019-10-04T08:25:12.196Z] 08:25:12     INFO -                   [--post-startup-delay POST_STARTUP_DELAY]
[task 2019-10-04T08:25:12.196Z] 08:25:12     INFO -                   [--browser-cycles BROWSER_CYCLES]
[task 2019-10-04T08:25:12.196Z] 08:25:12     INFO -                   [--test-url-params TEST_URL_PARAMS] [--print-tests]
[task 2019-10-04T08:25:12.197Z] 08:25:12     INFO -                   [--debug-mode] [--disable-e10s] [--enable-webrender]
[task 2019-10-04T08:25:12.197Z] 08:25:12     INFO -                   [--run-local] [--obj-path OBJ_PATH] [--noinstall]
[task 2019-10-04T08:25:12.197Z] 08:25:12     INFO -                   [--browsertime] [--browsertime-node BROWSERTIME_NODE]
[task 2019-10-04T08:25:12.197Z] 08:25:12     INFO -                   [--browsertime-browsertimejs BROWSERTIME_BROWSERTIMEJS]
[task 2019-10-04T08:25:12.197Z] 08:25:12     INFO -                   [--browsertime-chromedriver BROWSERTIME_CHROMEDRIVER]
[task 2019-10-04T08:25:12.197Z] 08:25:12     INFO -                   [--browsertime-ffmpeg BROWSERTIME_FFMPEG]
[task 2019-10-04T08:25:12.197Z] 08:25:12     INFO -                   [--browsertime-geckodriver BROWSERTIME_GECKODRIVER]
[task 2019-10-04T08:25:12.197Z] 08:25:12     INFO -                   [--log-raw LOG_RAW] [--log-html LOG_HTML]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -                   [--log-tbpl LOG_TBPL] [--log-xunit LOG_XUNIT]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -                   [--log-unittest LOG_UNITTEST] [--log-grouped LOG_GROUPED]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -                   [--log-mach LOG_MACH] [--log-raw-level LOG_RAW_LEVEL]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -                   [--log-tbpl-compact] [--log-tbpl-level LOG_TBPL_LEVEL]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -                   [--log-tbpl-buffer LOG_TBPL_BUFFER] [--log-mach-verbose]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -                   [--log-mach-screenshot] [--log-mach-level LOG_MACH_LEVEL]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -                   [--log-mach-buffer LOG_MACH_BUFFER]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -                   [--log-mach-no-screenshot]
[task 2019-10-04T08:25:12.198Z] 08:25:12     INFO -  raptor.py: error: unrecognized arguments: --setpref gfx.direct2d.disabled=true
Flags: needinfo?(rwood)
Flags: needinfo?(nalexander)

I really don't understand the issue, sorry - the latest Raptor on Win7 on mozilla-central is running fine / all green. The bug you reference is really old, landed 1.5 years ago.

Flags: needinfo?(rwood)

The current code has this in setup_talos:
https://searchfox.org/mozilla-central/source/taskcluster/taskgraph/transforms/tests.py#629


    for test in tests:
        if test['suite'] not in ['talos', 'raptor']:
            yield test
            continue

        if test['suite'] == 'talos':
            extra_options = test.setdefault('mozharness', {}).setdefault('extra-options', [])
            extra_options.append('--use-talos-json')

        # win7 needs to test skip
        if test['build-platform'].startswith('win32'):
            extra_options.append('--add-option')
            extra_options.append('--setpref,gfx.direct2d.disabled=true')

        yield test

From my understanding for 'talos' and 'raptor' we will run and add the extra option for # win7 needs to test skip

What I did is move the raptor part to setup_raptor
https://phabricator.services.mozilla.com/D47748

but the try build shows failures for raptor win7 tests

try without raptor win32 setpref

Pushed by fstrugariu@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/ce4bc886eb8c
Move any raptor related command  from setup_talos to setup_raptor  from taskcluster/taskgraph/transforms/tests.py r=perftest-reviewers,rwood,nalexander
Status: ASSIGNED → RESOLVED
Closed: Last month
Resolution: --- → FIXED
Target Milestone: --- → mozilla71

Clearing NI as this has landed.

Flags: needinfo?(nalexander)
You need to log in before you can comment on or make changes to this bug.