@@ -29,7 +29,7 @@ CHAIN_ID="hetu_560000-1"
2929KEYRING=" test"
3030KEYALGO=" eth_secp256k1"
3131DENOM=" ahetu"
32- HOME_PREFIX=" $HOME /. hetud"
32+ HOME_PREFIX=" /data/ hetud"
3333# Set balance and stake amounts (matching local_node.sh exactly)
3434GENESIS_BALANCE=" 1000000000000000000000000000" # 1 million hetu
3535GENTX_STAKE=" 1000000000000000000000000" # 1 million hetu (1000000000000000000000000 = 10^24)
@@ -47,11 +47,14 @@ WS_PORT=8546
4747# Clean up all existing data locally and remotely
4848echo " Cleaning up all existing data..."
4949
50+ # Stop any running hetu processes locally
51+ pkill hetud || true
52+
5053# Clean local node data
5154rm -rf " ${HOME_PREFIX} " /*
5255for i in $( seq 0 $(( NUM_VALIDATORS - 1 )) ) ; do
5356 echo " Cleaning up local validator $i data..."
54- rm -rf " ${HOME} /.hetud $i "
57+ rm -rf " ${HOME_PREFIX} $i "
5558done
5659
5760# Clean remote node data (skip any IP matching primary)
@@ -63,7 +66,7 @@ for i in $(seq 0 $((NUM_VALIDATORS - 1))); do
6366 continue
6467 fi
6568 echo " Cleaning up data on $TARGET_IP ..."
66- ssh root @${TARGET_IP} ' rm -rf ~/.hetud ~/.hetud * 2>/dev/null || true'
69+ ssh ubuntu @${TARGET_IP} " pkill hetud || true; rm -rf \" ${HOME_PREFIX} \" \" ${HOME_PREFIX} \" * 2>/dev/null || true"
6770done
6871
6972# Initialize primary node
@@ -75,16 +78,18 @@ GENESIS="${HOME_PREFIX}/config/genesis.json"
7578TMP_GENESIS=" ${HOME_PREFIX} /config/tmp_genesis.json"
7679
7780# Change parameter token denominations to ahetu
78- jq --arg denom " $DENOM " ' .app_state["staking"]["params"]["bond_denom"]=$denom' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
79- jq --arg denom " $DENOM " ' .app_state["gov"]["deposit_params"]["min_deposit"][0]["denom"]=$denom' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
80- jq --arg denom " $DENOM " ' .app_state["gov"]["params"]["min_deposit"][0]["denom"]=$denom' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
81- jq --arg denom " $DENOM " ' .app_state["inflation"]["params"]["mint_denom"]=$denom' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
81+ jq ' .app_state["staking"]["params"]["bond_denom"]="ahetu"' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
82+ jq ' .app_state["crisis"]["constant_fee"]["denom"]="ahetu"' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
83+ jq ' .app_state["gov"]["deposit_params"]["min_deposit"][0]["denom"]="ahetu"' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
84+ jq ' .app_state["evm"]["params"]["evm_denom"]="gas"' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
85+ jq ' .app_state["inflation"]["params"]["mint_denom"]="ahetu"' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
86+
8287
8388# Set gas limit in genesis
84- jq ' .consensus_params["block"]["max_gas"]="10000000"' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
89+ # jq '.consensus_params["block"]["max_gas"]="10000000"' "$GENESIS" >"$TMP_GENESIS" && mv "$TMP_GENESIS" "$GENESIS"
8590
8691# Set base fee in genesis
87- jq --arg fee " $BASEFEE " ' .app_state["feemarket"]["params"]["base_fee"]=$fee' " $GENESIS " > " $TMP_GENESIS " && mv " $TMP_GENESIS " " $GENESIS "
92+ # jq --arg fee "$BASEFEE" '.app_state["feemarket"]["params"]["base_fee"]=$fee' "$GENESIS" >"$TMP_GENESIS" && mv "$TMP_GENESIS" "$GENESIS"
8893
8994# Change proposal periods to pass within a reasonable time
9095sed -i.bak ' s/"max_deposit_period": "172800s"/"max_deposit_period": "30s"/g' " $GENESIS "
111116# Create clone directories, gentx, and get node IDs
112117declare -a NODE_IDS
113118for i in $( seq 0 $(( NUM_VALIDATORS - 1 )) ) ; do
114- CLONE_HOME=" ${HOME} /.hetud $i "
119+ CLONE_HOME=" ${HOME_PREFIX} $i "
115120 echo " Creating gentx for validator $i in ${CLONE_HOME} ..."
116121
117122 # Initialize fresh node
@@ -139,6 +144,9 @@ for i in $(seq 0 $((NUM_VALIDATORS - 1))); do
139144 sed -i.bak -e ' /^\[rpc\]/,/^\[/s|^laddr *= *.*|laddr = "tcp://0.0.0.0:26657"|' " $CONFIG_TOML "
140145 sed -i.bak -e ' /^\[p2p\]/,/^\[/s|^laddr *= *.*|laddr = "tcp://0.0.0.0:26656"|' " $CONFIG_TOML "
141146
147+ # Set mempool type to narwhal
148+ sed -i.bak -e ' /^\[mempool\]/,/^\[/s|^type *= *.*|type = "narwhal"|' " $CONFIG_TOML "
149+
142150 # Update other settings
143151 sed -i.bak \
144152 -e " s/^moniker *=.*/moniker = \" node${i} \" /" \
@@ -163,14 +171,14 @@ for i in $(seq 0 $((NUM_VALIDATORS - 1))); do
163171 -e ' s/^evm.tracer = .*$/evm.tracer = ""/' \
164172 " $APP_TOML "
165173
166- # Set timeouts for better network stability
167- sed -i.bak ' s/timeout_propose = "3s "/timeout_propose = "30s "/g' " $CONFIG_TOML "
168- sed -i.bak ' s/timeout_propose_delta = "500ms "/timeout_propose_delta = "5s "/g' " $CONFIG_TOML "
169- sed -i.bak ' s/timeout_prevote = "1s "/timeout_prevote = "10s "/g' " $CONFIG_TOML "
170- sed -i.bak ' s/timeout_prevote_delta = "500ms "/timeout_prevote_delta = "5s "/g' " $CONFIG_TOML "
171- sed -i.bak ' s/timeout_precommit = "1s "/timeout_precommit = "10s "/g' " $CONFIG_TOML "
172- sed -i.bak ' s/timeout_precommit_delta = "500ms "/timeout_precommit_delta = "5s "/g' " $CONFIG_TOML "
173- sed -i.bak ' s/timeout_commit = "5s "/timeout_commit = "150s "/g' " $CONFIG_TOML "
174+ # Set consensus timeouts
175+ sed -i.bak ' s/timeout_propose = ".* "/timeout_propose = "200ms "/g' " $CONFIG_TOML "
176+ sed -i.bak ' s/timeout_propose_delta = ".* "/timeout_propose_delta = "100ms "/g' " $CONFIG_TOML "
177+ sed -i.bak ' s/timeout_prevote = ".* "/timeout_prevote = "200ms "/g' " $CONFIG_TOML "
178+ sed -i.bak ' s/timeout_prevote_delta = ".* "/timeout_prevote_delta = "100ms "/g' " $CONFIG_TOML "
179+ sed -i.bak ' s/timeout_precommit = ".* "/timeout_precommit = "200ms "/g' " $CONFIG_TOML "
180+ sed -i.bak ' s/timeout_precommit_delta = ".* "/timeout_precommit_delta = "100ms "/g' " $CONFIG_TOML "
181+ sed -i.bak ' s/timeout_commit = ".* "/timeout_commit = "1s "/g' " $CONFIG_TOML "
174182 sed -i.bak ' s/timeout_broadcast_tx_commit = "10s"/timeout_broadcast_tx_commit = "150s"/g' " $CONFIG_TOML "
175183
176184 # Use the corresponding validator IP
@@ -209,7 +217,7 @@ hetud validate-genesis --home "${HOME_PREFIX}"
209217
210218# Configure peers for each validator
211219for i in $( seq 0 $(( NUM_VALIDATORS - 1 )) ) ; do
212- CLONE_HOME=" ${HOME} /.hetud $i "
220+ CLONE_HOME=" ${HOME_PREFIX} $i "
213221 PEERS=" "
214222
215223 # Build peers string excluding self
229237
230238# Copy genesis to all validators
231239for i in $( seq 0 $(( NUM_VALIDATORS - 1 )) ) ; do
232- CLONE_HOME=" ${HOME} /.hetud $i "
240+ CLONE_HOME=" ${HOME_PREFIX} $i "
233241 cp " ${HOME_PREFIX} /config/genesis.json" " ${CLONE_HOME} /config/"
234242done
235243
@@ -243,16 +251,16 @@ for i in $(seq 0 $((NUM_VALIDATORS - 1))); do
243251 fi
244252 echo " Copying validator $i data to $TARGET_IP ..."
245253 # First remove the old directory on remote
246- ssh root @${TARGET_IP} " rm -rf ${HOME} /.hetud ${i} "
254+ ssh ubuntu @${TARGET_IP} " rm -rf ${HOME_PREFIX} ${i} "
247255 # Then copy the new data
248- rsync -av " ${HOME} /.hetud ${i} /" " root @${TARGET_IP} :${HOME} /.hetud ${i} /"
256+ rsync -av " ${HOME_PREFIX} ${i} /" " ubuntu @${TARGET_IP} :${HOME_PREFIX} ${i} /"
249257done
250258
251259echo " All validators initialized successfully!"
252260echo " Genesis file location: ${HOME_PREFIX} /config/genesis.json"
253261echo " Validator information:"
254262for i in $( seq 0 $(( NUM_VALIDATORS - 1 )) ) ; do
255- CLONE_HOME=" ${HOME} /.hetud $i "
263+ CLONE_HOME=" ${HOME_PREFIX} $i "
256264 echo " Validator $i :"
257265 echo " Directory: ${CLONE_HOME} "
258266 echo " Node ID: ${NODE_IDS[$i]} "
0 commit comments