Witnessing Hive Life Between HardForks

A bystander who doesn't work with Hive on a daily basis might think that Hive hasn’t changed much since it was launched. From time to time, even I have the impression that things are going slowly. I was on vacation for two weeks, and this was enough for me to get a better perspective after I had to catch up with everything that was done when I was not paying as much attention as I usually do. :-)

hive_afk.jpg
- Tuscany, receiving notification about HiveFest announcement, courtesy of @dobranoc

Expectations:

  • Happy, slow and steady life.
  • Add fancy features.
  • HardFork.
  • Enjoy the fancy features.
  • Happy, slow and steady life.

Reality:

  • Brainstorming, analysing, improving Hive.
  • Pre-HardForking Stress Disorder.
  • HardFork.
  • Post-HardForking Stress Disorder.
  • Brainstorming, analysing, improving Hive.

Introducing new features and changes to the existing code is not as simple as writing a few lines of code. Under the hood, Hive is a very complex environment, and it’s very easy to unintentionally break things.

A little bit of history to give you some perspective

Some of you might remember the events surrounding HF20, when (among other changes) resource credits were introduced to replace the old bandwidth.

2018-09-12

14 months after the HF19, the next version was tagged as v0.20.0, and the HardFork was scheduled on 25th September

2018-09-18

Status: 100% Operational - Announcement after the chain halted due to an unexpected fork.

”A constant was changed that should not have been, and this caused the initial fork. Your witnesses did a fantastic job of quickly spotting the suspicious behavior and began reverting to a stable build (...) This exposed another bug that resided in our fork database logic that was present due to the infrequency that this logic is activated, and which caused the minority fork to halt as well.”

2018-09-20

Release of a tagged version v0.20.1 with fixes.

2018-09-21

Release of a tagged version v0.20.2 with fixes.

2018-09-24

Hardfork 20: What to Expect Tomorrow - Posted one day before the HF20 to prepare us for potential issues.

2018-09-25

HF20 Update: Hardfork Complete - Posted after HF20 was executed.

”We are aware that users are experiencing issues posting (...) RCs are regenerating so if you cannot post now, you will be able to post once your RCs regenerate.”

”One issue that has arisen is that users who were highly active before the hardfork are presenting negative Resource Credit balances. This is effectively RC “debt” that they accumulated prior to the hardfork.”

”An unrelated issue with voting power was uncovered that resulted in many accounts having lower voting power than expected. This issue affects everyone who has posted in the last 5 days equally. Most accounts that have been active will return to their expected voting power equilibrium within one day, while the remainder will take no longer than 5 days.”

2018-09-26

Update on Unexpected Voting Power Behavior - Post explaining another temporary issue that will affect voting for up to 5 days.

”This issue affects everyone equally (aside from those accounts which have not voted in the past 5 days) and once voting power regenerates over the next 5 days, this type of behavior will not present again. In addition, most accounts that have been active will return to their expected voting power equilibrium within one day. Large accounts that have been active, but only infrequently, will be impacted most significantly. Those accounts that haven’t voted in 5 days are not affected by this issue, but the more recent your last vote the more your voting power will be impacted.”

2018-09-28

HF20 Update: Restoring Continuity - Post about upcoming v0.20.4 patch with many fixes, such as:

  • RC parameters set too low, and many users are unable to transact
  • Accounts at less than -100% RC cannot regenerate mana
  • Powering up / delegating does not increase RC
  • Users powering up, were not able to vote/transact instantly
  • Voting power was not carried over properly at HF20
  • New witness properties not returned from condenser_api
  • condenser_api.get_accounts returning invalid voting_power values
  • Some accounts had negative resource credits at hardfork time
  • Small accounts did not receive full mana upon the transition.
  • Require broadcasting nodes to have RC plugin enabled
2018-09-29

Release of a tagged version v0.20.5 with fixes.

2018-10-01

HF20 Update: Operations Stable - Posted after things finally looked stable, a week after the HF20.

2018-10-24

v0.20.6 Officially Released: RC System Update and Optimization - Another announcement.

A month after the HF20, a fine-tuned version of RC plugin was released.

Over the following 10 months, there were 6 more tagged releases for HF20 with various fixes and improvements.

(Kudos for @vandeberg and @theoretical!)

5shkm6.jpg

Here we are, three years later.
Hive is improving and developing more rapidly than ever, and I have the pleasure to collaborate with many highly skilled professionals. Our big ecosystem requires a wide variety of skills, and it’s impossible for a single expert to grasp all the details. Yet, we need to make sure that we will do our best to keep up with the highest QA standards.

”With a great blockchain comes great responsibility.” - Uncle @null

Coming soon

HF is not only for HardFork

Soon, HiveFest6 will take place in AltspaceVR, (sign up if you haven’t yet!).
You will have a chance to “e-meet” (the next best thing after real-life meetings) fellow members of the Hive community.

Restarting public testnet

Our public testnet has reached the end of life (the hardcoded limit of 3M blocks). I’ll be restarting it from scratch sometime soon, after discussing the details of potential improvements.

Hivemind v1.25.3

The final release of Hivemind for Ubuntu 18.04 LTS is not officially out yet. on my goodies-server you can find a two-week old dump for v1.25.2 (d73bd507), which I’m now updating (should be compatible with the upcoming version, just remember to run the ./db_upgrade script after restore). That should help with deploying new instance many times faster than in case of regular sync from scratch.

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center