Has the Eclipse Happened? Explaining How Hive Hardforks Work, and Activating HF24 on October 14th

The date for October 6th in the HF24 blockchain code has already passed- did we actually fork? No, and here's why.




Eclipse is a big set of changes- across the chain itself, and impacting almost every service and piece of infrastructure that interacts with it. As per the previous posts about HF24, the blockchain code itself is called HiveD and it is finished, tested, and ready to go. Many witnesses are already running it, the hardfork date has passed... so why haven't we forked?

A reminder of how hardforks work on Hive from the last announcement post:

The Hive blockchain does not fork at a specific block height (after a certain amount of finalized blocks) like some chains. A timestamp is set in the code, and when a super-majority of witness servers are running the upgrade at or after this time, the chain will fork to the new version. In non-tech speak: as long as enough of the top 20 are running HF24 when we hit the coded time on October 6th, the hardfork happens automagically.

The consensus witnesses in the top 20 have indicated they all support the hardfork code, but are purposefully holding off having a super-majority running it for a few more days. This has been to make sure that the interfaces that everyone uses and the Hivemind nodes they need to run are available to support the network.

TL;DR: There were not enough steady Hivemind nodes and not enough real application testing to support activating the fork on the 6th, so the top 20 witnesses plan to wait until October 14th for last fixes and node upgrades. If you are a backup witness already ready to go, then you are fine and there's nothing for you to do!

This has been a pretty humbling learning experience for us as we all try to work towards cooperative decentralization. When checking in the final hours before the hardfork activation date, it became clear to witnesses that many dApps hadn't had a chance to test against Hivemind to make sure that they would be able to continue running smoothly after the fork, a few had already experienced some breakage, and that many RPC node operators would not be able to have a Hivemind node up in time to support everyone's needs after the chain forked.

Previously, API changes have been small, easy to test, and upgrading at the eleventh hour has been easy enough. Sometimes they were launched with one specific site in mind and no concern for breaking everything else. With HF24, enough is changing that almost every site, interface, and project will be impacted. Even should the blockchain itself fork smoothly, if every single service ends up broken then the hardfork is not a success for the users of Hive.

This is a pretty unique set of circumstances (you don't rebuild everything from the foundations up every day, or even really more than once) but that doesn't change the fact there are some major improvements to be made for everyone on the development and node operator end of the ecosystem. While we knew from the inception of Hive that decentralization requires cooperation, having to make the choice to not activate the hardfork on the scheduled date has really hammered that point home. It's a good example of where we as a whole need to fix friction points in communication and how we support developers who are used to different circumstances, but it's also an opportunity to help everyone recognize the importance of personal responsibility. Decentralization thrives with cooperation, and that can always be improved.

To all of the users who have been excited for this major retooling to be done as the next step in Hive's journey, thank you for your passion. It's not easy when things are beyond your control or aren't working the way you expect. You are one of the most engaged and communities there is, and that's part of why getting things right matters.

For witnesses who are already upgraded and waiting for the fork to be activated, you're still good to go! A big thank you for being prepared in time for the activation date and for being a part of the network.

In the intervening time between the hardfork activation date on October 6th up to the time of this post, community members have been reaching out to talk to every known dApp team to check if they've tested, to figure out what needs to change to make their lives easier through the HF process, and to double check that core services will be up following the hardfork. Small things coming up in the course of this new testing are being patched and snapshots are being created so that more Hivemind API nodes can be synced up faster to help handle the increased load that the hardfork will put on different parts of our network infrastructure. And finally, the top 20 have chosen October 14th at 14:00 UTC as the time that the majority will switch over and we'll finally get our Eclipse.

H2
H3
H4
3 columns
2 columns
1 column
36 Comments