ブロック数マイナス1
ステータスバーに表示されるブロック数を1減らしたいと思う。プログラムを最初にロードした時、1ではなく0ブロックと表示されるようになる: 「0 connections 0 blocks 0 transactions」
これまで常にnBestHeight + 1だった。ジェネシスブロックを数えていたためだ。技術的には、はい、ジェネシスブロックはブロックだ。最初から持っているハードコードされたブロックだ。ジェネシスブロックを持たないことはできない。他のコインを測定する基準コインのようなものと考えてもよいだろう。人々が知りたいブロック数は、ダウンロードしたブロックの数だ。
主な利点は、ブロック数が現在の最良ブロックのブロック番号と等しくなることだ。ブロック数が10なら、持っている最も高いブロック番号は10だ。ブロック10を持っており、ブロック11は持っていないということだ。
ここで起きた混乱を軽減できるだろう:
Kkencauseyの投稿(2010年8月15日23:45 UTC)[削除済み] Quote from: davidonpda on August 15, 2010, 11:31:37 PM
… すでにブロック74638に達している。これはそのブロックが正常なものになったということか?
自分もこの点について混乱していたが、#bitcoin-devで確認を得た。
不正なブロックは74638番で、最後の正常なブロックは74637番だった。番号は0から始まるため、クライアントが74638ブロックと表示している場合、ブロック74637番まで、つまり最後の正常なブロックまで取得済みということになる。
SVN rev 137で対応した。
カウント方式を変更するのではなく、ブロックの個数ではなく単に最新のブロックを参照すればいいのではないか。
74741 blocks
ではなく
Latest block: 74740
そうすれば、カウント方式を変更する必要も、多くの人に考え方を調整させる必要もなくなる。
カウント方式を変更するのではなく、ブロックの個数ではなく単に最新のブロックを参照すればいいのではないか。
74741 blocks
ではなく
Latest block: 74740
そうすれば、カウント方式を変更する必要も、多くの人に考え方を調整させる必要もなくなる。
私の経験からすると、コミットされた変更は常に一部の人を他の人より満足させるものの、結局はみんな慣れるものだ。しかし、すでに入っている変更を巻き戻して、最初にその変更が提出された理由に対処するためにさらにもう一度変更を入れるのは、ただみんなを混乱させるだけだ。その証拠が、私がたった今書いたこの文章だ!
Latest block: 74740
だと、
0 connections 0 blocks 0 transactions
の代わりに
0 connections Latest block: 0 0 transactions
となってしまう。どうもしっくりこない。
サトシの説明の仕方が一番筋が通っていると思う。ジェネシスブロックは技術的にはブロックかもしれないが、チェーンの中では単なる参照点に過ぎない。 数字でいうゼロのようなものだ。ゼロはもちろんそれ自体が数字だが、何かを数える時には単なる参照点でしかない。まあ、少なくとも人間はそういう風に数える。 😛