Какой файл blk * .dat содержит конкретный блок?

Nov 29 2020

Есть ли способ узнать, в каком blk*.datфайле содержится конкретный блок?

Например, было бы полезно знать, какой *.datфайл содержит блок 478558, и из какой точки происходит BCHразветвление BTC. Поскольку оба совместно используют все предыдущие блоки, при запуске разветвленного узла было бы сэкономить много пропускной способности, просто скопировав файлы блоков из BTC в каталог данных BCH и переиндексируя их (с -reindexопцией), вместо того, чтобы повторно загружать их все сначала.

Ответы

3 RedGrittyBrick Nov 30 2020 at 01:21

Есть ли способ узнать, какой файл blk * .dat содержит конкретный блок?

Мы не можем сказать вам, какой из ваших файлов * .dat содержит блок 478558, потому что не требуется, чтобы разные узлы хранили свои данные одинаково.

Две установки одного и того же программного обеспечения (например, ядра Биткойна) могут иметь разные блоки в файле blk * .dat с тем же именем. На самом деле это возможно.

См. Все ли копии блокчейна одинаковы?

Поэтому единственный способ узнать это - проанализировать индексы или выполнить поиск в каждом файле, пока не найдете блок. Я полагаю, вы, вероятно, могли бы оценить, какой файл, скорее всего, основан на текущей высоте цепочки блоков + искомом блоке, и начать поиск в файлах, близких к вашему наилучшему предположению.