The earlier implementation would just schedule new visits for origins
forever, regardless of whether they were already scheduled or not.
Details
Details
- Reviewers
olasd douardda - Group Reviewers
Reviewers - Commits
- rDSCHc92ead5875ec: grab_next_visits: don't re-schedule visits too fast
Diff Detail
Diff Detail
- Repository
- rDSCH Scheduling utilities
- Lint
No Linters Available - Unit
No Unit Test Coverage - Build Status
Buildable 18655 Build 28865: Phabricator diff pipeline on jenkins Jenkins console · Jenkins Build 28864: arc lint + arc unit
Event Timeline
Comment Actions
Build is green
Patch application report for D4912 (id=17491)
Could not rebase; Attempt merge onto 03460207a1...
Updating 0346020..ba303f9 Fast-forward swh/scheduler/backend.py | 107 ++++++++++++++++++++++------ swh/scheduler/interface.py | 45 +++++++++--- swh/scheduler/model.py | 33 +-------- swh/scheduler/simulator/__init__.py | 18 ++--- swh/scheduler/simulator/origin_scheduler.py | 2 +- swh/scheduler/simulator/origins.py | 83 ++++++++++++++++++++- swh/scheduler/tests/test_scheduler.py | 93 ++++++++++++++++++++---- swh/scheduler/tests/test_simulator.py | 6 +- 8 files changed, 294 insertions(+), 93 deletions(-)
Changes applied before test
commit ba303f946ecd3e15e58de0072ce71b50aa423d59 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:31:43 2021 +0100 grab_next_visits: don't re-schedule visits too fast The earlier implementation would just schedule new visits for origins forever, regardless of whether they were already scheduled or not. commit 808ae6851faee9b633e773f9150d360cdb927146 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:29:45 2021 +0100 Allow overriding the timestamp of grab_next_visits This makes the simulator behavior more consistent with reality. commit 9943195d31c51a44325cba09d07fb6e904d45a00 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:27:40 2021 +0100 Construct grab_next_visits query arguments incrementally commit 72070b7bf628788b6872e90a3f8ac8f0c01b70d9 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 14:57:42 2021 +0100 simulator: add simple lister simulation commit 1f1aad459c4b0740ecbe96e9809e4b31f66bf999 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 14:54:53 2021 +0100 Factor out ListedOrigin generation to use the OriginModel This generates consistent last_update values according to the model and simulated time. commit b93aa5be2c2d5dc2130e1027698f3e1255052d8d Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 13:01:53 2021 +0100 Make PaginatedListedOriginList a concretization of PagedResult 1. consistent with swh-storage and swh-indexer-storage 2. we can use swh.core.api.classes.stream_results on scheduler.get_listed_origins. commit 2f47936731cf438a5195978a2af3250597b693b5 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Wed Jan 20 17:29:16 2021 +0100 Add scheduling policy for already visited origins with known last update This policy schedules origins by decreasing order of "visit lag" (that is, origins with the most lag are scheduled first). commit acad712ad3f71f88f99e45e9b4f571ad751945dc Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Wed Jan 20 17:25:46 2021 +0100 Add scheduling policy for never visited origins This policy orders never visited origins by increasing date of last update (scheduling the "oldest" never visited origins first).
See https://jenkins.softwareheritage.org/job/DSCH/job/tests-on-diff/234/ for more details.
Comment Actions
Build is green
Patch application report for D4912 (id=17523)
Could not rebase; Attempt merge onto b93aa5be2c...
Updating b93aa5b..f5af170 Fast-forward swh/scheduler/backend.py | 61 +++++++++++++++++---- swh/scheduler/interface.py | 15 +++++- swh/scheduler/simulator/__init__.py | 18 +++---- swh/scheduler/simulator/origin_scheduler.py | 2 +- swh/scheduler/simulator/origins.py | 83 +++++++++++++++++++++++++++-- swh/scheduler/tests/test_scheduler.py | 21 +++++++- 6 files changed, 171 insertions(+), 29 deletions(-)
Changes applied before test
commit f5af170b5f8d6bc36b56aa007db613bcc5754804 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:31:43 2021 +0100 grab_next_visits: don't re-schedule visits too fast The earlier implementation would just schedule new visits for origins forever, regardless of whether they were already scheduled or not. commit 808ae6851faee9b633e773f9150d360cdb927146 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:29:45 2021 +0100 Allow overriding the timestamp of grab_next_visits This makes the simulator behavior more consistent with reality. commit 9943195d31c51a44325cba09d07fb6e904d45a00 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:27:40 2021 +0100 Construct grab_next_visits query arguments incrementally commit 72070b7bf628788b6872e90a3f8ac8f0c01b70d9 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 14:57:42 2021 +0100 simulator: add simple lister simulation commit 1f1aad459c4b0740ecbe96e9809e4b31f66bf999 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 14:54:53 2021 +0100 Factor out ListedOrigin generation to use the OriginModel This generates consistent last_update values according to the model and simulated time.
See https://jenkins.softwareheritage.org/job/DSCH/job/tests-on-diff/260/ for more details.
Comment Actions
Build is green
Patch application report for D4912 (id=17570)
Could not rebase; Attempt merge onto 2906b4e8a0...
Updating 2906b4e..6784a19 Fast-forward swh/scheduler/backend.py | 61 +++++++++++++++---- swh/scheduler/interface.py | 15 ++++- swh/scheduler/simulator/__init__.py | 18 +++--- swh/scheduler/simulator/origin_scheduler.py | 2 +- swh/scheduler/simulator/origins.py | 92 +++++++++++++++++++++++++++-- swh/scheduler/tests/test_scheduler.py | 21 ++++++- 6 files changed, 179 insertions(+), 30 deletions(-)
Changes applied before test
commit 6784a19cdc38b8f97aa4f9c1da9859ece24865f1 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:31:43 2021 +0100 grab_next_visits: don't re-schedule visits too fast The earlier implementation would just schedule new visits for origins forever, regardless of whether they were already scheduled or not. commit 09a8768c30dc335afccde4df046b371a274cb2f9 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:29:45 2021 +0100 Allow overriding the timestamp of grab_next_visits This makes the simulator behavior more consistent with reality. commit a2dc72474056c2f20e255acf13ec3e662e1aad7a Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:27:40 2021 +0100 Construct grab_next_visits query arguments incrementally commit e5709214b4917a5fe3634d040da7a061f5978f66 Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 14:57:42 2021 +0100 simulator: add simple lister simulation commit 7af98e2bc048c6946679e7d95cf8620e4a0ee4bf Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 14:54:53 2021 +0100 Factor out ListedOrigin generation to use the OriginModel This generates consistent last_update values according to the model and simulated time.
See https://jenkins.softwareheritage.org/job/DSCH/job/tests-on-diff/274/ for more details.
Comment Actions
Build is green
Patch application report for D4912 (id=17610)
Could not rebase; Attempt merge onto 2906b4e8a0...
Updating 2906b4e..c92ead5 Fast-forward docs/simulator.rst | 15 +++++ swh/scheduler/backend.py | 61 +++++++++++++++---- swh/scheduler/interface.py | 15 ++++- swh/scheduler/simulator/__init__.py | 18 +++--- swh/scheduler/simulator/origin_scheduler.py | 2 +- swh/scheduler/simulator/origins.py | 92 +++++++++++++++++++++++++++-- swh/scheduler/tests/test_scheduler.py | 21 ++++++- 7 files changed, 194 insertions(+), 30 deletions(-)
Changes applied before test
commit c92ead5875ecfd96a164eec1803398adec6eb8a8 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:31:43 2021 +0100 grab_next_visits: don't re-schedule visits too fast The earlier implementation would just schedule new visits for origins forever, regardless of whether they were already scheduled or not. commit 2b39cbcabf9960c1f660442e15f6c17654aec9e2 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:29:45 2021 +0100 Allow overriding the timestamp of grab_next_visits This makes the simulator behavior more consistent with reality. commit 7ffbdd1b3eb579f43e8913ea11cfd916b2f3c457 Author: Nicolas Dandrimont <nicolas@dandrimont.eu> Date: Thu Jan 21 17:27:40 2021 +0100 Construct grab_next_visits query arguments incrementally commit ea068b46a89e07c60ad1233afd36afc6bb29031e Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 14:57:42 2021 +0100 simulator: add simple lister simulation commit 7af98e2bc048c6946679e7d95cf8620e4a0ee4bf Author: Valentin Lorentz <vlorentz@softwareheritage.org> Date: Thu Jan 21 14:54:53 2021 +0100 Factor out ListedOrigin generation to use the OriginModel This generates consistent last_update values according to the model and simulated time.
See https://jenkins.softwareheritage.org/job/DSCH/job/tests-on-diff/283/ for more details.