1.33.0 Unable to start node

Hello Community,

After upgrading to 1.33.0 I am unable to start my node. See the attached error. For some reason it thinks I’m on v1.29.0 even though cardano-node --version and cardano-cli --version says 1.33.0

This is the process I used to update the node:

Update Build Server

sudo apt-get update

sudo apt-get upgrade

sudo reboot

Update Cabal and GHC using GHCup

curl --proto ‘=https’ --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

ghcup install ghc 9.2.1

update cabal

Update scripts

/opt/cardano/cnode/script/cntools.sh

/opt/cardano/cnode/script/topologyUpdater.sh

Run prereqs script:

~/tmp/prereqs.sh -f

Reset all variables after updating

Build New Version of Cardano

sudo systemctl stop cnode

cd ~/git

sudo rm -R cardano-node

git clone GitHub - input-output-hk/cardano-node: The core component that is used to participate in a Cardano decentralised blockchain.

cd cardano-node

git fetch --tags --all

git tag

git checkout 1.33.0

echo -e “package cardano-crypto-praos\n flags: -external-libsodium-vrf” > cabal.project.local

$CNODE_HOME/scripts/cabal-build-all.sh

Confirm Correct Version

cardano-node version

cardano-cli version

Looks like systemd finds another version of cardano-node than your shell.

Can you show the cnode.service file that is actually starting the node and the output of whereis cardano-node and which cardano-node?

Hi @HeptaSean, thanks for your reply.

Indeed it seems I have cardano at two locations (whereis cardano-node):

cardano-node: /home/demetrio/.cabal/bin/cardano-node /home/demetrio/.local/bin/cardano-node

(which cardano-node)
/home/demetrio/.cabal/bin/cardano-node

cnode.sevice:
[Unit]
Description=Cardano Node
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
Restart=always
RestartSec=5
User=demetrio
LimitNOFILE=1048576
WorkingDirectory=/opt/cardano/cnode/scripts
ExecStart=/bin/bash -l -c "exec /opt/cardano/cnode/scripts/cnode.sh"
ExecStop=/bin/bash -l -c "exec kill -2 $(ps -ef | grep [c]ardano-node.*./opt/cardano/cnode/ | tr -s ' ' | cut -d ' ' -f2) &>/dev/null"
KillSignal=SIGINT
SuccessExitStatus=143
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=cnode
TimeoutStopSec=5
KillMode=mixed

[Install]
WantedBy=multi-user.target

Does it work if you just remove the one in ~/.local/bin/ (the one in ~/.cabal/bin/ seems to be the right one)?

I tried:

sudo rm -R /home/demetrio/.local/bin/cardano-node

whereis now shows:

cardano-node: /home/demetrio/.cabal/bin/cardano-node

after rebooting the server the same errors starting cnode. It’s weird because if I run:
/opt/cardano/cnode/scripts$ ./cnode.sh it seems to start fine:

Listening on http://127.0.0.1:12798

Jan 15 11:59:27 cardano-build cnode[13497]: Guild scripts has now been upgraded to support cardano-node 1.32.1 or higher (1.29.0 found).
Jan 15 11:59:27 cardano-build cnode[13497]: Please update cardano-node (note that you should ideally update your config too) or use tagged branches for older node version.
Jan 15 11:59:27 cardano-build cnode[13497]: ERROR: Failed to load common env file
Jan 15 11:59:27 cardano-build cnode[13497]: Please verify set values in ‘User Variables’ section in env file or log an issue on GitHub
Jan 15 11:59:27 cardano-build systemd[1]: cnode.service: Main process exited, code=exited, status=1/FAILURE
Jan 15 11:59:27 cardano-build systemd[1]: cnode.service: Failed with result ‘exit-code’.

The same? Wrong version, even though wrong version was just removed?

Anyway, you could a) debug, why you have another $PATH on the shell than the one cnode.sh gets in the systemd unit (do you perhaps use another shell than bash and set the path in its startup file and not in .bashrc?) or b) just copy the cardano-node binary over into .local/bin/.

Another debug possibility: The systemd unit uses bash -l. If you execute that in your terminal (go into a bash login shell) and do whereis cardano-node there and try /opt/cardano/cnode/scripts/cnode.sh there, you maybe get a hint, what’s happening.

Also: If there’s also an old cardano-cli and maybe others in .local/bin/, I would remove/replace them, too, to not leave too much of a mess for the next update.

Awesome advice. I deleted all the other cardano related files in

.local/bin

and it started. Thank you so much.

1 Like