Как плот справляется с бревном в этом сценарии?

введите описание изображения здесь

Предположим, что d выбран в качестве лидера на приведенном выше рисунке, как он будет поступать с журналом с индексами 11 и 12. На мой взгляд, он должен удалить два журнала, но я не нахожу никаких подсказок в документе о том, как для обработки журналов, как в приведенном выше сценарии.


person Charles0429    schedule 13.09.2016    source источник


Ответы (1)


Если (d) выбран лидером, то он реплицирует свой журнал для последователей, он не будет удалять элементы с индексами 11 и 12. См. Раздел 5.3 о репликации журнала в плотная бумага, где написано

В Raft лидер обрабатывает несоответствия, заставляя журналы последователей дублировать свои собственные. Это означает, что конфликтующие записи в журналах последователей будут перезаписаны записями из журнала лидера.

Правила избрания лидера гарантируют, что это решение будет безопасным.

person superfell    schedule 13.09.2016
comment
журналы в 11 и 12 еще не зафиксированы, насколько я понимаю, raft не будет повторно фиксировать журналы, которые еще не зафиксированы в предыдущих iterms. - person Charles0429; 20.09.2016
comment
они не будут совершены, пока лидер не воспроизведет их, но лидер будет копировать предыдущие условия, когда он станет лидером. Как только элементы журнала будут реплицированы на достаточное количество узлов, эти записи будут зафиксированы. - person superfell; 20.09.2016
comment
в разделе 5.4.2 плотного документа рисунок 8 иллюстрирует пример, фиксируя запись в журнале с предыдущими терминами, он может перезаписать существующие записи журнала, которые уже были сделаны предыдущим лидером, поэтому я думаю, что лидер d не будет реплицировать журналы 11 и 12 и фиксировать их. - person Charles0429; 21.09.2016
comment
лидер не удаляет записи журнала из своего собственного журнала, поэтому он должен их реплицировать, а затем зафиксировать. - person superfell; 21.09.2016
comment
Хорошо. Тогда журнал будет отличаться между сценарием, когда (d) становится лидером, и сценарием, когда (a) становится лидером? - person Charles0429; 22.09.2016
comment
Да, если бы (а) был избран лидером, итоговый журнал был бы другим [но только для записей журнала, которые не были зафиксированы во время выборов] - person superfell; 22.09.2016