f(x)Core Mainnet Validator Updates

Superbit123 and @ClaudioxBarros upgraded

@Richard

In future I think its best to give more time and describe as much as possible the variables.

This includes new storage resources and when these moving parts are detrimental to errors or fatal errors.

Maybe screen recording of successful testnet before public announcement pre setups can help any slashing or missing blocks.

I do understand there are a lot of stuff that can be unpredictable or to capture, plus time consuming.

Although, we are not bounded when to release the update, we can always decide this gradually.

Regards, SB

6 Likes

FxWorld updated. Thx for the guide!

4 Likes

My new BYTEX Validator is updated to 3.1 Function X StarScan

6 Likes

yes, we will consider that for future upgrades and also consider creating a telegram notification channel just for validators and integrate @FrenchXCore node monitoring so that the public validators do not miss out any important information.

on a side note, it would be much appreciated if the validators can actively check this updates thread and possibly the telegram channel

5 Likes

I think these important updates should have been communicated on Telegram: Contact @functionx_io

Aravan

1 Like

f(x)Core v4 Major Upgrade - TESTNET

Dear Validators,

I wanted to bring to your attention that the f(x)Core v4 upgrade testnet proposal submission is expected to be submitted tomorrow on the 21st of April sometime in the afternoon SGT. Once the submission is made, it will enter into a voting period and is expected to pass within two hours.

The upgrade height is expected to be around next Wednesday 26th April, and anyone who has a node on testnet can practice performing the upgrade to ensure a smoother process on the actual mainnet, which is expected to occur around 1 month later.

We encourage you to practice the upgrade process on the testnet to prevent the chain from stopping running for too long or to start as fast as possible. Additionally, this time we are including a new doctor command, fxcored doctor, to identify any issues more efficiently during the upgrade process.

To make this process easier for everyone, we strongly recommend that you set up cosmovisor in advance. This tool will automatically perform the upgrade when the height is reached, making the upgrade process more seamless for all users. We understand that some users may prefer not to use it. If this is the case for you, please note that you will need to standby during the upgrade height to perform the upgrade manually, otherwise you risk getting jailed/slashed.

We are excited to take this next step forward and appreciate your participation in this important upgrade.

Tagging a few testnet validators here that I know: @ClaudioxBarros @FrenchXCore @kenorb @cop4200 @l4zyboi @Superbit123

Best regards,
Lance

10 Likes

I didn’t setup Cosmovisor on our testnet validator yet, so will do before the 26th of april : no problem…
Cosmovisor is setup on our mainnet validator node though !

Regards,
@FrenchXCore

Hello validators,

The fxCore testnet version is released, the branch is: release/v4.0.x, and the tag is: v4.0.0-rc1

Releases · FunctionX/fx-core

fx-core/CHANGELOG.md at v4.0.0-rc1 · FunctionX/fx-core

The upgrade height is: 8088000, it is expected to be 2-3pm SGT tomorrow

If you use the cosmovisor for the upgrade, you can start installing and deploying today

Regards,
Lance

Edit:
About 22hours+ to go countdown link

5 Likes

Hey everyone!

The testnet upgrade height is almost here - we’re only about 3k blocks away from hitting 8088000. That means in just 4 hours and 47 minutes approximately.

https://functionx.github.io/fx-core/tools/countdown.html?network=testnet

So, I hope everyone has taken the time to practice and test their systems on the testnet pre-upgrade, to ensure a smooth transition when the mainnet upgrade arrives.

Regards,
Lance

2 Likes

Hi @lancelai !

2 things which prevented my testnet validator from restarting properly and immediately :
1) double_sign_check_height:
In my '‘config.toml’ file, the environment variable ‘double_sign_check_height’ was set to 10.
Not a big deal, but setting it to 0 made it transition smoothly later on (even though it’s not very safe from my point of view).

2) My SSL/TLS configuration:
My testnet validator also runs a HTTPS RPC interface, that’s why I configured an SSL certificate on it (tls environment variables in config.toml file).
However, on v4 restart, it served me the following errors:

Apr 26 08:30:54 *** cosmovisor[***]: 08:30:54AM ERR Error serving server with TLS err="accept tcp [::]:26657: use of closed network connection" module=node
Apr 26 08:30:54 *** cosmovisor[***]: 08:30:54AM ERR RPC HTTPS server stopped err="accept tcp [::]:26657: use of closed network connection" module=rpc-server
Apr 26 08:30:54 *** cosmovisor[***]: 08:30:54AM ERR Stopped accept routine, as transport is closed module=p2p numPeers=0
Apr 26 08:30:54 *** cosmovisor[***]: 08:30:54AM ERR Error stopping consensus state err="not started" module=consensus

I feel like I have a misconfiguration or that I need to disable HTTPS (it works when I do so).
What do you think ?

Regards,
@FrenchXCore

hello, for 1 they just added a new commit yesterday to fix the double sign check height
And this is the latest documentation to upgrade: Cosmovisor Integration - Binaries - Function X Docs

for 2, with v4 could you run fxcored doctor and post the output here to troubleshoot the working environment?

did the HTTPS RPC previously working fine and caused error after this upgrade or it is a new setup?

Thanks, didn’t notice yesterday’s latest commit…

The HTTPS configuration did work fine before.
Here is what the doctor commands return in HTTP (-working) and in HTTPS (-notworking) configurations. Not sure that’ll help…

And if I may, you should also include disks/partitions space left in your next doctor command upgrade.

Thanks !

WORKING:

Computer Info:
	OS/Arch: linux/amd64
	CPU:  6
	Memory Total: 16008 MB, Available: 14542 MB, UsedPercent: 7.299702%
fxcored Info:
	Version:  release/v4.0.x-1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
	Git Commit:  1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
	Build Tags:  netgo,ledger
	Go Version:  go1.19.5
	Cosmos SDK Version:  v0.46.12
Genesis:
	File:  /root/.fxcore/config/genesis.json
	Network: Testnet
Upgrade Info:
	File:  /root/.fxcore/data/upgrade-info.json
	Name:  fxv4
	Height:  8088000
Blockchain Data:
	Remote Node:  or tcp://localhost:26657
	Chain ID:  dhobyghaut
	Block Height: 8089299
	Syncing:  false
	Node Info: 
		Version:  release/v4.0.x-1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
		Git Commit:  1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
		Build Tags:  netgo,ledger
		Go Version:  go version go1.19.5 linux/amd64
		Cosmos SDK Version:  v0.46.12
	Warning: The remote node chainId(dhobyghaut) does not match the local genesis chainId(06D0A9659E1EC5B0E57E8E2E5F1B1266094808BC9B4081E1A55011FEF4586ACE)
App Config:
	File:  /root/.fxcore/config/app.toml
Tendermint Config: 
	File: /root/.fxcore/config/config.toml
Cosmovisor:
	Path: /root/.fxcore/cosmovisor
	Current: /root/.fxcore/cosmovisor/current
		fxcored version: release/v4.0.x-1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
	Genesis: /root/.fxcore/cosmovisor/genesis
		fxcored version: release/v3.1.x-49d991f692d6662660c2c2dd9e009238f595c438
	Upgrades: /root/.fxcore/cosmovisor/upgrades
		Version fxv3: /root/.fxcore/cosmovisor/upgrades/fxv3
			fxcored version: release/v3.1.x-49d991f692d6662660c2c2dd9e009238f595c438
			upgrade-info.json: /root/.fxcore/cosmovisor/upgrades/fxv3/upgrade-info.json
			upgrade-info.json content: {"name":"fxv3","time":"0001-01-01T00:00:00Z","height":6578000,"info":"{\"binaries\":{\"darwin/arm64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Darwin_arm64.tar.gz\",\"darwin/amd64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Darwin_amd64.tar.gz\",\"linux/arm64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Linux_arm64.tar.gz\",\"linux/amd64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Linux_amd64.tar.gz\",\"windows/x86_64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Windows_x86_64.zip\"}}"}
		Version fxv4: /root/.fxcore/cosmovisor/upgrades/fxv4
			fxcored version: release/v4.0.x-1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
			upgrade-info.json: /root/.fxcore/cosmovisor/upgrades/fxv4/upgrade-info.json
			upgrade-info.json content: {"name":"fxv4","time":"0001-01-01T00:00:00Z","height":8088000,"info":"{\"binaries\":{\"darwin/arm64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Darwin_arm64.tar.gz\",\"darwin/amd64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Darwin_amd64.tar.gz\",\"linux/arm64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Linux_arm64.tar.gz\",\"linux/amd64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Linux_amd64.tar.gz\",\"windows/x86_64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Windows_x86_64.zip\"}}"}
	Current plan: fxv4
	List Path:
		/root/.fxcore/cosmovisor
		├── current -> /root/.fxcore/cosmovisor/upgrades/fxv4
		├── genesis
		│   └── bin
		│       └── fxcored
		└── upgrades
		    ├── fxv3
		    │   ├── bin
		    │   │   └── fxcored
		    │   └── upgrade-info.json
		    └── fxv4
		        ├── bin
		        │   ├── frenchxcore-testnet-doctor-working.txt
		        │   └── fxcored
		        └── upgrade-info.json

NOT WORKING:

Computer Info:
	OS/Arch: linux/amd64
	CPU:  6
	Memory Total: 16008 MB, Available: 14894 MB, UsedPercent: 5.014661%
fxcored Info:
	Version:  release/v4.0.x-1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
	Git Commit:  1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
	Build Tags:  netgo,ledger
	Go Version:  go1.19.5
	Cosmos SDK Version:  v0.46.12
Genesis:
	File:  /root/.fxcore/config/genesis.json
	Network: Testnet
Upgrade Info:
	File:  /root/.fxcore/data/upgrade-info.json
	Name:  fxv4
	Height:  8088000
Blockchain Data:
	Data Dir: /root/.fxcore/data
	Chain ID:  dhobyghaut
	Block Height: 8089342
	Syncing:  true
	Node Type: This node is a validator
	Node Info: 
		Version:  HEAD-5eef07630e89ad0bd786fb08fa0fb937e5c84d67
	Warning: The remote node chainId(dhobyghaut) does not match the local genesis chainId(06D0A9659E1EC5B0E57E8E2E5F1B1266094808BC9B4081E1A55011FEF4586ACE)
App Config:
	File:  /root/.fxcore/config/app.toml
Tendermint Config: 
	File: /root/.fxcore/config/config.toml
Cosmovisor:
	Path: /root/.fxcore/cosmovisor
	Current: /root/.fxcore/cosmovisor/current
		fxcored version: release/v4.0.x-1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
	Genesis: /root/.fxcore/cosmovisor/genesis
		fxcored version: release/v3.1.x-49d991f692d6662660c2c2dd9e009238f595c438
	Upgrades: /root/.fxcore/cosmovisor/upgrades
		Version fxv3: /root/.fxcore/cosmovisor/upgrades/fxv3
			fxcored version: release/v3.1.x-49d991f692d6662660c2c2dd9e009238f595c438
			upgrade-info.json: /root/.fxcore/cosmovisor/upgrades/fxv3/upgrade-info.json
			upgrade-info.json content: {"name":"fxv3","time":"0001-01-01T00:00:00Z","height":6578000,"info":"{\"binaries\":{\"darwin/arm64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Darwin_arm64.tar.gz\",\"darwin/amd64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Darwin_amd64.tar.gz\",\"linux/arm64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Linux_arm64.tar.gz\",\"linux/amd64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Linux_amd64.tar.gz\",\"windows/x86_64\":\"https://github.com/functionX/fx-core/releases/download/v3.0.0/fx-core_3.0.0_Windows_x86_64.zip\"}}"}
		Version fxv4: /root/.fxcore/cosmovisor/upgrades/fxv4
			fxcored version: release/v4.0.x-1f04e7a8089ddabc3808d08ec3aa451969d0d2f0
			upgrade-info.json: /root/.fxcore/cosmovisor/upgrades/fxv4/upgrade-info.json
			upgrade-info.json content: {"name":"fxv4","time":"0001-01-01T00:00:00Z","height":8088000,"info":"{\"binaries\":{\"darwin/arm64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Darwin_arm64.tar.gz\",\"darwin/amd64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Darwin_amd64.tar.gz\",\"linux/arm64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Linux_arm64.tar.gz\",\"linux/amd64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Linux_amd64.tar.gz\",\"windows/x86_64\":\"https://github.com/functionX/fx-core/releases/download/v4.0.0-rc/fx-core_4.0.0-rc_Windows_x86_64.zip\"}}"}
	Current plan: fxv4
	List Path:
		/root/.fxcore/cosmovisor
		├── current -> /root/.fxcore/cosmovisor/upgrades/fxv4
		├── genesis
		│   └── bin
		│       └── fxcored
		└── upgrades
		    ├── fxv3
		    │   ├── bin
		    │   │   └── fxcored
		    │   └── upgrade-info.json
		    └── fxv4
		        ├── bin
		        │   ├── frenchxcore-testnet-doctor-working.txt
		        │   └── fxcored
		        └── upgrade-info.json

but you are able to start the node and sync right?
so the issue is just on https?
otherwise, we need more logs

As soon as I switch to HTTP, it’s working fine…
But if I switch back the following parameters for HTTPS, fxcored wouldn’t sync anymore (with the previously given error messages) :

  1. config.toml
tls_cert_file = "/etc/letsencrypt/live/xxx.xxx.com/fullchain.pem"
tls_key_file = "/etc/letsencrypt/live/xxx.xx.com/privkey.pem"
  1. client.toml
node = "https://xxx.xxx.com:26657"

(this above used to work fine and my SSL cert is up-to-date)

The following is working right now:

  1. config.toml
#tls_cert_file = "/etc/letsencrypt/live/xxx.xxx.com/fullchain.pem"
#tls_key_file = "/etc/letsencrypt/live/xxx.xx.com/privkey.pem"
  1. client.toml
node = "http://127.0.0.1:26657"

Issues has been fixed and committed to the release/v4.0.x branch:​ Commits · FunctionX/fx-core · GitHub

Since you has already configured cosmovisor, so just start from step 2 again

The fxcored doctor command has added to display disk space

Thanks a lot @lancelai !
I’m on it.
Will keep you apprised !

Regards
@FrenchXCore

1 Like

Alright, got it working now !

I’m assuming there was some additional checks in Cosmos latest version, and I did have to tweak my config parameters for SSL to work with my LetsEncrypt certificate.

Here’s what needs to be configured to make it work - maybe you could add some chapter to the Gitbook:

1) File “.fxcore/config/config.toml” - [rpc] section
laddr = "tcp://*domain.name*:26657"
tls_cert_file = "/*path*/*to*/*your*/fullchain.pem"
tls_key_file = "/*path*/*to*/*your*/privkey.pem"

2) File “.fxcore/config/app.toml” - [json-rpc] section
address = "*domain.name*:8545"
ws-address = "*domain.name*:8546"

3) File “.fxcore/config/app.toml” - [tls] section
certificate-path = "/*path*/*to*/*your*/fullchain.pem"
key-path = "/*path*/*to*/*your*/privkey.pem"

4) File “.fxcore/config/client.toml”
node = "https://*domain.name*:26657"

And thanks for the disk availability add-on !

Regards,
@FrenchXCore

2 Likes

Dear validators!

We found a bug on testnet, so it needs to be upgraded again.

We will send another testnet upgrade proposal today.

The upgrade height is expected to be on next Monday afternoon SGT.

So the mainnet will be delayed, and the mainnet upgrade proposal is expected to be next week.

Regards,
Lance

7 Likes

Got it… Ready !
FrenchXCore testnet validator ready to roll with release/v4.1.x-b1a04da361e67d436fd548758facc6580fa9a907 !

2 Likes

Validator “FX FriendsX” ready too!):jigsaw::earth_africa::white_check_mark:

1 Like