algorand / algorand/go-algorand

Enable proposing larger forward jumps for block timestamp

オープン
#5,426 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
Team Scytale
主要言語
Go
スター
1.4k
フォーク
537
平均マージ
1日 7時間
マージ済み PR(30日)
18

説明

_(tentative)_

## Problem

Currently, two consecutive block timestamps cannot be more than 25 seconds apart. As a result of this, if the network ever experienced downtime and the block timestamp fell significantly behind real time, it would take time for the timestamp to catch back up to real time.

e.g. if the block timestamp fell 4 hours behind real time, it would take ~45 min to get back to current time:

(4 * 60 * 60 secs) / ((25 - 4) seconds caught up per round) = 685 rounds to catch up.
685*4 = 2740 secs = 45 min

## Solution

If block timestamp is more than 25 seconds behind the proposer's system time, they should be able to propose a larger jump forward. Voters will verify that the proposed block timestamp is within 25(?) seconds of their own system time, and more than 25 seconds beyond the previous block timestamp.
This may require a new mechanism, e.g. a flag that says "I'm proposing a jump in time" to go to this more sophisticated time-incrementing logic.

risk: if we do this, we will introduce a dependency on participants' system times. Our existing sytem does not depend on it.

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。