store: при равной полноте точек побеждает пришедшая доставка
- байтовый порядок канонических форм остался тай-брейком только внутри одной доставки: на живом корпусе он решал 98,8% спорных координат и системно хранил меньшее значение, из-за чего step_count терял род и verify:archive был красным - правило перестало быть коммутативным осознанно, поэтому порядок свёртки приведён к журнальному: проход воркера прекращается на отложенной доставке, а свёртка вне порядка журнала пишет WARN - заведены счётчики PointsHeld и PointsErased — удержание полнотой и единственное направление, в котором правило теряет содержание
This commit is contained in:
@@ -13,10 +13,12 @@ import "context"
|
||||
// сущностях, где ту же ошибку повторили молча.
|
||||
//
|
||||
// Отсюда и общий помощник вместо второй рукописной копии: механизм один,
|
||||
// отношения разные. `architecture.md` уже обещает смену тай-брейка точек, когда
|
||||
// род метрики будет измерен, — то есть правка одного экземпляра при живом
|
||||
// втором запланирована заранее, и расхождение правил слияния ломает детерминизм
|
||||
// свёртки молча.
|
||||
// отношения разные. Правка одного экземпляра при живом втором уже случилась:
|
||||
// тай-брейк точек сменён с байтового порядка на «побеждает пришедшая», а
|
||||
// тай-брейк сущностей остался позицией журнала — потому что у сущности есть
|
||||
// колонка провенанса, а у точки нет. Механизм при этом не разъехался ровно
|
||||
// благодаря общему помощнику; критерий выбора между двумя правилами записан в
|
||||
// `architecture.md`, раздел «Разрешение столкновений».
|
||||
//
|
||||
// dominates(a, b) обязан быть СТРОГИМ превосходством: a не хуже b и b не не
|
||||
// хуже a. Иначе взаимно покрывающие друг друга кандидаты выбьют друг друга, и
|
||||
|
||||
Reference in New Issue
Block a user