У меня есть два узла BTC Core, модифицированные пользовательскими блоками генезиса. Я подключаю их с помощью -connect
опции и -listen
опции, и я вижу в debug.log, что они видят друг друга:
2018-03-21 19:49:42 New outbound peer connected: version: 70015, blocks=0, peer=5
И:
2018-03-21 19:49:40 New outbound peer connected: version: 70015, blocks=0, peer=0
Но, как показано на изображении, клиент не может синхронизироваться. Нужно ли мне добывать хотя бы один блок, чтобы BTC Core мог завершить синхронизацию, или это симптом другой проблемы?
Я думаю, что нашел ответ (но я не уверен на 100%). Мне пришлось изменить это:
chainTxData = ChainTxData{
// Data as of block 0000000000000000002d6cca6761c99b3c2e936f9a0e304b7c7651a993f461de (height 506081).
// 1521311547, // * UNIX timestamp of last known number of transactions
// 0, // * total number of transactions between genesis and that timestamp
// // (the tx=... number in the SetBestChain debug.log lines)
// 3.5 // * estimated number of transactions per second after that timestamp
};
К этому в chainparams.cpp:
chainTxData = ChainTxData{
0,
0,
0
};
Кажется, это решило проблему, и теперь я вижу «Прогресс 100%». Это единственное, что изменилось, другие вещи «Увеличение прогресса в час», «Количество оставшихся блоков», «3 дня позади» остались прежними, но прогресс, похоже, изменился после того, как я изменил этот раздел кода.
ОБНОВЛЕНИЕ: при попытке использовать cpuminer-multi для майнинга я получаю это сообщение:
JSON protocol response:
{
"error": {
"code": -10,
"message": "Bitcoin is downloading blocks..."
},
"result": null,
"id": 0
}
Так что, похоже, я ошибся, и даже если он говорит 100%, это не закончило синхронизацию. Это потому, что в цепочке нет блоков? Генезисный блок по какой-то причине не считается?