Breaking the mirror, building a new one.

This post is for informational purposes and Mirrornet operations coordination, intended for witnesses and developers who want to use the test environment.

Mirrornet/Fakenet?

Please refer to my previous posts if you are unfamiliar with what the Mirrornet/Fakenet is.
I strongly recommend reading them before doing anything involving the Hive Mirrornet. I don’t want to repeat what was written, and some of the information may be obsolete since it relates to previous instances that ran a long time ago. However, you can still gain a better understanding of what it’s all about.

Breaking the mirror (reasonable efforts to keep it running)

For simplicity and to save resources, etc., I’m not providing high availability for the mirror, but I try to keep it running most of the time.
An old instance that was started in 2023 is shutting down right now.
I’m keeping the old chain-id for simplicity (and because I like it). The skeleton key will also be the same.

Work in Progress

As always, I’ll use this post for on-chain coordination of Mirrornet setup and related tasks.
There’s a long way from starting with block conversion and initial deployment, to setting up witnesses, initiating the first production, and then adding required components.
At the end of this route is a distributed set of mirror block producers and a fully functional, public fake/mirror API node.

Changelog

  • Current develop (equivalent to the upcoming 1.27.8 release) was used to create Mirrornet binaries
  • Mainnet block_log up to block 92500000 was “mirrored”
  • Initial replay of consensus node was created
  • Snapshot was created for quick deployment
  • Old mirrornet instance was shut down
    2025-01-19T08:59:35.776093 p2p_plugin.cpp:199 handle_block ] Got 13 transactions on block 92406742 by gtg -- Block Time Offset: -223 ms
  • New mirrornet produced first block
    2025-01-19T22:31:02.601414 p2p_plugin.cpp:579 broadcast_block ] Broadcasting block #92500001 with 0 transactions
  • Live (node based) conversion from mainnet started, transactions from roughly 90k blocks to catch up
    Block stats:{"num":92500131,"lib":92500131,"type":"gen","id":"058370a3c8f749627a7bc0ca9eac0454cdbbb1ed","ts":"2025-01-19T22:37:45","bp":"gtg","txs":1589,"size":298410,"offset":-200833,"before":{"inc":1733,"ok":1589,"auth":0,"rc":0},"after":{"exp":0,"fail":0,"appl":0,"post":0,"drop":0,"size":0},"exec":{"offset":-399982,"pre":14,"work":199135,"post":40604,"all":239753}}
  • Mirrornet API node operational
    hivemind-block-processing-1 | INFO - hive.indexer.sync:185 - [SINGLE] Current system time: 2025-01-25 06:05:14.471

By the way, if you aren’t a developer or witness, and are close to being bored to death by this post, here’s an absolutely unrelated, random YouTube video featuring John Cleese, Rowan Atkinson, and Hive.

H2
H3
H4
Upload from PC
Video gallery
3 columns
2 columns
1 column
15 Comments