0
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2026-08-06 13:08:40 +08:00
discourse/migrations/core/lib
Gerhard Schlager d93f2a6cdd MT: Add worker results, plan-ahead scheduling and TUI timing fixes
Framework and reporting changes from the posts-step series:

* Workers can hand one result back to the parent. The progress pipe
  lines are tagged now (p = progress, r = result; both directions of
  the format live in PipeProgressChannel), and a step can define
  combine_results(results, tracker) to reduce the workers' results
  parent-side under the run DB's single-writer discipline. Whatever
  the reducer logs feeds back into the step's warning/error tallies.
* The scheduler computes a fork-starved step's plan (row count and
  partition boundaries) on a background thread while the steps holding
  the fork budget finish, so the counting overlaps with their work.
* Shards open with journal_mode off: single writer, read only once at
  merge, thrown away on failure.
* TUI: the step clock keeps counting time in the duration (like the
  plain reporter), the percent floors instead of rounding up to 100%
  early, and sub-second durations show as "<1s".
* Enables RSpec/LeakyConstantDeclaration for the migrations specs.
2026-07-22 12:57:27 +02:00
..
migrations MT: Add worker results, plan-ahead scheduling and TUI timing fixes 2026-07-22 12:57:27 +02:00
migrations-core.rb
migrations.rb