PlatON v1.5.1 Version Upgrade Operation Instructions
1. Version Information
The PlatON version information for this release is as follows:
ChainID: 210425
Version: 1.5.1
Git Commit: a8468d02836130c1fa4d928f0731f40f5ab4add0
Binary Download:
Ubuntu 18.04 System:
https://download.platon.network/platon/platon/1.5.1/platon
Ubuntu 20.04 System:
https://download.platon.network/platon/platon/ubuntu20.04/1.5.1/platonUbuntu 22.04 System:
https://download.platon.network/platon/platon/ubuntu22.04/1.5.1/platon
2. Version Features
- Enabling snap synchronization mode, which is faster compared to the fast mode
- Supporting the debug_trace interface
- Syncing with Ethereum versions 1.10.17 to 1.11.0 features
- Supporting the eth_getBlockReceipts method to retrieve all transaction receipts within a block
3. Instructions
Starting from v1.5.1, PlatON supports the snap synchronization function, while fast synchronization is no longer supported. Nodes previously started using the fast mode should adjust to the snap mode.
4. Installation Guide
If you have already installed a PlatON node, please skip to Point 2 for the update operation;
If you have not installed a node, please strictly follow the official documentation for installation. If you need assistance, please contact customer service.
5. Update Guide (Update First, Restart Later)
The following steps use Ubuntu 18.04 system as an example. The update operation is divided into two methods: Directly using binary, Source code compilation. Choose one of these methods to update; Please strictly follow the steps below to upgrade. If you need assistance, please contact customer service.
-
Direct Binary Method
bash
# Backup the binary $ [[ -x /usr/bin/platon ]] && sudo mv /usr/bin/platon /usr/bin/platon_`platon version | grep '^Version:' | awk -F "[ ,:,-]" '{print $3}'` # Choose the appropriate version based on the node host system $ wget https://download.platon.network/platon/platon/1.5.1/platon # Use the new version $ chmod +x platon $ sudo mv platon /usr/bin/platon # Check the version $ platon version Version: 1.5.1-unstable Git Commit: a8468d02836130c1fa4d928f0731f40f5ab4add0 -
Source Code Compilation (For environments that have been successfully compiled before. For a fresh compilation, please refer to the official website source installation guide)
bash
# Backup the binary $ [[ -x /usr/bin/platon ]] && sudo mv /usr/bin/platon /usr/bin/platon_`platon version | grep '^Version:' | awk -F "[ ,:,-]" '{print $3}'` # Compile the binary $ git clone https://github.com/PlatONnetwork/PlatON-Go.git --recursive $ cd PlatON-Go/ $ git fetch --all $ git checkout -b platon-1.5.1 a8468d02836130c1fa4d928f0731f40f5ab4add0 # Install dependencies and compile. If "missing go.sum entry for module" appears, use go mod tidy to remove unused dependencies and add missing ones $ go mod download && make all # Use the new version $ chmod +x build/bin/platon $ sudo mv build/bin/platon /usr/bin/platon # Check the version $ platon version Version: 1.5.1-unstable Git Commit: a8468d02836130c1fa4d928f0731f40f5ab4add0
6. Check Startup Parameters and Choose the Right Time to Restart the Process
If the current node has staked, first check through the blockchain explorer whether the node has been selected as a validator (in consensus)
If it has been elected, please wait for the node to exit validator status (transition from “in consensus” to “active”) before restarting. The following commands are for reference only. Restart the platon process according to your respective management method.
bash
# Check the process ID
$ ps aux |grep platon
root 13476 39.1 49.7 9174616 3925796 ? Sl Feb07 1140:19 /usr/bin/platon --identity ....
Stop the platon node, e.g., kill 13476. The process ID in the above example is 13476, adjust according to the actual situation when operating; After executing the kill command, you can use the above ps command again to check if the process has exited correctly. If it has exited normally, proceed with the subsequent startup command.
text
$ kill <process_id>
Start the platon node
text
$ nohup platon --identity platon-node --datadir ./data --port 16789 --http --http.port 6789 --http.api "platon,net,web3,admin" --http.addr "127.0.0.1" --nodekey ./data/nodekey --cbft.blskey ./data/blskey --verbosity 1 --syncmode "snap" > ./data/platon.log 2>&1 &
Nodes previously using the fast synchronization mode please pay special attention As the new version no longer supports the fast mode, continuing to use the original startup parameters will cause startup failure. Please adjust syncmode to snap in time.
After restarting, enter the console to check if the node version has taken effect: v1.5.1-unstable-a8468d02
text
$ platon attach http://localhost:6789
Welcome to the PlatON JavaScript console!
PlatONnetwork/x.x.x.x/v1.5.1-unstable-a8468d02
7. Version Declaration
After declaring the version, you can view the node version in the browser
-
For nodes that have not staked, skip this step.
-
If
$PLATON_MTOOLDIRis not defined, you need to complete the absolute path according to the actual deployment situation.bash
#Version declaration example $ platon_mtool declare_version --keystore $PLATON_MTOOLDIR/keystore/staking.json --config $PLATON_MTOOLDIR/validator/validator_config.json
8. Feedback
If platon upgrade fails, feedback can be provided through the following channels.
- Telegram Validator Group
- Email: validator@platon.network