.cron.yml
author Kartikaya Gupta <kgupta@mozilla.com>
Wed, 30 May 2018 15:54:50 -0400
changeset 420571 8a1bdb8d8bf5a1c8869bf3f82fd86c56f9f4b72c
parent 420293 de8c8efbe24fab8bedf9cfbec36834b31ddc5567
child 420892 e942cbff958854dbbfbce40c295634bdf3502037
permissions -rw-r--r--
Bug 1457590 - Strengthen the contract around recycling HitTestingTreeNodes. r=botond This patch makes three related changes: - A non-functional change that factors a IsRecyclable function on HitTestingTreeNode. - A non-functional change that sprinkles proof-of-tree-lock arguments to a few HitTestingTreeNode functions, to ensure at compile-time that they can only be called while holding the tree lock. - A functional change that stops clearing mLayersId in HitTestingTreeNode::Destroy, so that if a node is non-recyclable, and it gets Destroy()'d while other code still has a RefPtr to it, that other code can still read the layers id off in a safe manner. These changes provide a stronger set of checks around node recycling, and allows for a safe mechanism to use a HitTestingTreeNode on the controller thread without having to lock the entire APZ tree. The mechanism is effectively a per-node lock, which will be added in the next patch. MozReview-Commit-ID: DBIjFDZJwhE

# Definitions for jobs that run periodically.  For details on the format, see
# `taskcluster/taskgraph/cron/schema.py`.  For documentation, see
# `taskcluster/docs/cron.rst`.

---

jobs:
    - name: nightly-desktop
      job:
          type: decision-task
          treeherder-symbol: Nd
          target-tasks-method: nightly_desktop
      run-on-projects:
          - mozilla-central
      when:
          by-project:
              # Match buildbot starts for now
              mozilla-central: [{hour: 10, minute: 0}, {hour: 22, minute: 0}]
              # No default

    - name: nightly-desktop-linux
      job:
          type: decision-task
          treeherder-symbol: Nd-Ln
          target-tasks-method: nightly_linux
      run-on-projects:
          - mozilla-central
      when: []  # never (hook only)

    - name: nightly-desktop-osx
      job:
          type: decision-task
          treeherder-symbol: Nd-OSX
          target-tasks-method: nightly_macosx
      run-on-projects:
          - mozilla-central
      when: []  # never (hook only)

    - name: nightly-desktop-win32
      job:
          type: decision-task
          treeherder-symbol: Nd-win32
          target-tasks-method: nightly_win32
      run-on-projects:
          - mozilla-central
      when: []  # never (hook only)

    - name: nightly-desktop-win64
      job:
          type: decision-task
          treeherder-symbol: Nd-win64
          target-tasks-method: nightly_win64
      run-on-projects:
          - mozilla-central
      when: []  # never (hook only)

    - name: nightly-android
      job:
          type: decision-task
          treeherder-symbol: Na
          target-tasks-method: nightly_fennec
      run-on-projects:
          - mozilla-central
      when:
          by-project:
              # Match buildbot starts for now
              mozilla-central: [{hour: 10, minute: 0}]
              # No default

    - name: nightly-mochitest-valgrind
      job:
          type: decision-task
          treeherder-symbol: Vg
          target-tasks-method: mochitest_valgrind
      run-on-projects:
          - mozilla-central
      when:
          - {hour: 16, minute: 0}
          - {hour: 4, minute: 0}

    - name: nightly-dmd
      job:
          type: decision-task
          treeherder-symbol: Ndmd
          target-tasks-method: nightly_dmd
      run-on-projects:
          - mozilla-central
      when:
          by-project:
              mozilla-central: [{hour: 10, minute: 0}]
              # No default

    - name: searchfox-index
      job:
          type: decision-task
          treeherder-symbol: Searchfox
          target-tasks-method: searchfox_index
      run-on-projects:
          - mozilla-central
      when:
          by-project:
              mozilla-central: [{hour: 10, minute: 30}]
              # No default

    - name: periodic-update
      job:
          type: decision-task
          treeherder-symbol: Nfile
          target-tasks-method: file_update
      run-on-projects:
          - mozilla-central
      when:
          by-project:
              # No default branch
              mozilla-central:
                  - {weekday: 'Monday', hour: 10, minute: 0}
                  - {weekday: 'Thursday', hour: 10, minute: 0}
              mozilla-esr60:
                  - {weekday: 'Monday', hour: 10, minute: 0}
                  - {weekday: 'Thursday', hour: 10, minute: 0}