Hardfork 24 update: testnets and hivemind progress

Below is a quick summary of the Hive core work done by the BlockTrades team last week.

Hived testing and bug fixes

Status: Hived is feature complete and is undergoing testnet testing by the witnesses. So far, I think the testing is going very well.

Earlier in the week, testnet-based testing discovered a bug in the airdrop code for hardfork 24, which was fixed here:
https://gitlab.syncad.com/hive/hive/-/merge_requests/106/diffs

And this weekend, testnet testing uncovered another bug in this code, which was fixed today:
https://gitlab.syncad.com/hive/hive/-/merge_requests/107/diffs

There are no currently known issues with hived that should affect the hardfork date.

Hivemind progress

Most of our work this week continues to be focused on hivemind testing and fixes.

We have quite a large number of programmers working on hivemind now, and it really shows in the number of bugs that were identified and fixed last week. Here’s a list of fixes that were merged into the gitlab repo last week (there was too much work to easily summarize, but the interested reader can follow the links). A few were features rather than bug fixes, so I added comments beside those.
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/86/diffs
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/89
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/91 (add auto-http-server-port cli option)
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/92 (add prometheus monitoring)
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/93
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/94
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/95
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/96
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/97
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/99
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/100
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/101
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/102
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/104
https://gitlab.syncad.com/hive/hivemind/-/merge_requests/105

Hivemind initial sync testing

We also ran “hivemind sync” tests this week. When hivemind is started for the first time on a server, it must first load and organize all the blockchain data into its internal database format. After that, it enters a “live” sync mode where it adds new blocks as they are produced.

In our tests, the initial sync process took just under 4 days (there’s a lot of data in the Hive blockchain). This was our first successful sync of the entire blockchain using the new Eclipse version of hivemind, so it’s a significant milestone for our work on Eclipse.

Below is the database space consumed by Eclipse hivemind tables after a full sync:

       table_name        |   total    |   index    |   toast    |   table    
-------------------------+------------+------------+------------+------------
 hive_votes              | 212 GB     | 132 GB     | 8192 bytes | 80 GB
 hive_posts              | 103 GB     | 60 GB      | 8192 bytes | 43 GB
 hive_post_data          | 75 GB      | 1882 MB    | 20 GB      | 53 GB
 hive_permlink_data      | 20 GB      | 12 GB      |            | 8616 MB
 hive_follows            | 19 GB      | 12 GB      |            | 6805 MB
 hive_blocks             | 9993 MB    | 4033 MB    |            | 5961 MB
 hive_post_tags          | 8233 MB    | 5505 MB    |            | 2728 MB
 hive_feed_cache         | 2514 MB    | 1716 MB    |            | 798 MB
 hive_accounts           | 779 MB     | 352 MB     | 1216 kB    | 425 MB
 hive_tag_data           | 140 MB     | 80 MB      |            | 61 MB
 following_counts        | 59 MB      | 0 bytes    |            | 59 MB
 follower_counts         | 59 MB      | 0 bytes    |            | 59 MB
 hive_category_data      | 42 MB      | 24 MB      |            | 18 MB
 hive_payments           | 31 MB      | 19 MB      |            | 12 MB
 hive_reblogs            | 26 MB      | 18 MB      |            | 8384 kB
 hive_subscriptions      | 17 MB      | 11 MB      |            | 6768 kB
 hive_notifs             | 8176 kB    | 5072 kB    | 8192 bytes | 3096 kB
 hive_communities        | 4416 kB    | 1632 kB    | 72 kB      | 2712 kB
 hive_roles              | 1560 kB    | 912 kB     |            | 648 kB

Plans for upcoming week

The witnesses are continuing to do testnet-based tests of hived. That will likely be completed this week.

Our team will continue with fixes to hivemind. Most recently, we realized that we need to implement the reputation code directly inside hivemind now. This is just a reimplementation of the existing algorithm, not a rewrite, which would be a much longer task.

Ideally, we’ll complete hivemind work this week, which would allow us to keep the Sept 16th hardfork date. If not, we’ll likely push the hardfork date to the 22nd.

H2
H3
H4
3 columns
2 columns
1 column
72 Comments
Ecency