How to Survive Eclipse - Cheat Sheet (Updated)
Here it is, a long awaited code upgrade for Hive. Codename: Eclipse.
https://www.youtube.com/watch?v=bAHlH5bZNbU Yet another, very short, promotional HD video clip rendered for a brand new Hive fork 24.
# Eclipse
`v1.24.2`
It’s a major technology upgrade, the first after Hive was born.
- GitLab Repository: https://gitlab.syncad.com/hive/hive
where the main development efforts are committed
- GitHub Repository: https://github.com/openhive-network/hive
alternate repository (decentralization ftw)
![github_changes.png](https://images.hive.blog/DQmbuG716Uic249bzFmRXyXiMw3RtT3quNWBuM2L45Y56uu/github_changes.png) 978 changed files with 107,124 additions and 101,082 deletions.
# This simple Cheat Sheet is meant for the Hive node operators that are upgrading from `v0.23.0` to Eclipse.
Basic sysop skills and previous ~~Steem~~ / Hive experience is required.
`"version" : { "hive_blockchain_hard_fork" : "1.24.2", "hive_git_revision" : "00b5ff5573dcaa1c54ed8ed9cfbde06dee269c7e" }`
## HardFork Time
HardFork Time is the earliest point in time when the HardFork rules can be applied.
From that time onward whenever a supermajority of Hive witnesses taking part in a block production round votes for the Eclipse (i.e. runs the code), its rules will be in place.
### When?
https://github.com/openhive-network/hive/blob/v1.24.2/libraries/chain/database.cpp#L64
` 1601992800; // Tuesday, 06-Oct-2020 14:00:00 UTC`
### Right away
If at the HardFork time a supermajority of consensus witnesses is running `v1.24.2`, Eclipse will start right away.
### Some time later
If witnesses decide that we are not ready and continue to run the old version of the code, the HardFork will be postponed until a supermajority is reached. That's very unlikely now.
### Moving the date forward
~~Most likely in the above scenario, a new version will be released with a new date for a coordinated switch at a predetermined time.~~
That's very unlikely to happen (only in case of some breaking issues that we will be unable to fix on time).
# What are we waiting for?
Hivemind.
While it’s not required for Hive as such (it’s non-consensus, 2nd layer), its API is needed by many dapps, including condenser. We have to be sure that it works on an acceptable level. Once it’s up and running, we are good to go.
# Changelog Cheat Sheet
Here’s a simple list of changes that might help you move quickly from `v0.23.0` to `v1.24.2`.
- Release notes: https://gitlab.syncad.com/hive/hive/-/releases
- The supported and recommended system is `Ubuntu 18.04 LTS`.
- General purpose docker images are not ready (yet).
- The name of the binary changed from ~~`steemd`~~ to `hived`.
- Default data-dir changed from ~~`$HOME/.steemd`~~ to `$HOME/.hived`
- The old `account_history` plugin is deprecated. Use the RocksDB version of account_history plugin and adjust the corresponding variable names:
i.e. instead of `plugin = account_history account_history_api`
use `plugin = account_history_rocksdb account_history_api`
And instead of `track-account-range =` and/or `account-history-track-account-range =` use `account-history-rocksdb-track-account-range =`
Such as:
`account-history-rocksdb-track-account-range = ["binance-hot","binance-hot"]`
Please note that if you want to track more than one account you need to specify them in the following way:
```
account-history-rocksdb-track-account-range = ["binance-hot","binance-hot"]
account-history-rocksdb-track-account-range = ["bittrex","bittrex"]
account-history-rocksdb-track-account-range = ["blocktrades","blocktrades"]
account-history-rocksdb-track-account-range = ["deepcrypto8","deepcrypto8"]
```
- Default `shared-file-size = 54G` can be safely scaled down to `shared-file-size = 24G` or even `shared-file-size = 20G`. Keep an eye on it, use scaling or just set it big enough. Up to you. 20-ish should be good for many months.
- **Replay is required** while upgrading from `v0.23.0`. Make sure that you adjust your configuration and locations first.
- To do a replay, you can use your old `block_log` file.
- If you don’t have one, you can use one from a public source such as: https://gtg.openhive.network/get/blockchain/block_log
- To replay from scratch using an existing `block_log` file use `--replay --force-replay`.
- Some `cmake` variable names changed, so instead of ~~`STEEM_STATIC_BUILD`~~ there’s `HIVE_STATIC_BUILD`, etc.
- Check my [Witness Update: Release Candidate for Eclipse is out](/@gtg/witness-update-release-candidate-for-eclipse-is-out) for more info about building and configuration.
# Test API Endpoint
https://beta.openhive.network
Runs jussi, hived v1.24.0 and the develop branch of hivemind.
Known issues (being worked on): reputation and notifications.
# Any questions?
Ask them here in the comments or on the [OpenHive.Chat](https://openhive.chat/) but please be patient.
I may respond...
...with delay.
~~(I really need vacation and quality time with family. Don't worry, I'll be around.)~~[EDIT: CANCELED]