/etc/sysctl.conf
, add follow configfs.file-max = 500000
sysctl -p
/etc/security/limits.conf
, add follow configsoft nofile 65535
hard nofile 65535
/etc/systemd/user.conf
, add follow configDefaultLimitNOFILE=65535
/etc/systemd/system.conf
, add follow configDefaultLimitNOFILE=65535
reboot
zsh
, open file /etc/zshrc
, add follow configulimit -n 20480
bash
, open file ~/.bash_profile
, add follow configulimit -n 20480
compose.yml
and add ulimits:
nproc: 65535
nofile:
soft: 65535
hard: 65535
docker-compose -f ${compose.yml} down
docker-compose -f ${compose.yml} up -d
trust-node
and chain-id
#When using exchaincli
to query block/tx or send tx, the following errors may occur:
$ exchaincli query block 6547302
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x4cecdea]
$ exchaincli tx send boos ex1fh9tpkqka29n0mj307cu5cvp5ts0p4dl3mkv7r 1okt -y --fees 0.002okt
ERROR: chain ID required but not specified
You should use the flag
$ exchaincli query block 6547302 --trust-node
$ exchaincli tx send boos ex1fh9tpkqka29n0mj307cu5cvp5ts0p4dl3mkv7r 1okt -y --fees 0.002okt --chain-id exchain-65
or local configuration
$ exchaincli config chain-id exchain-65
$ exchaincli config trust-node true
When you start your own node, to make sure that your commitID of exchaind is consistent with the official version, check it by:
$ exchaind version --long
# or
$ docker exec docker_container_name exchaind version --long
For example, the commitID of v0.16.8.3 is ee5068ccb54b464aeaff7eef69fb2e8611551fed.
name: exchain
server_name: exchaind
client_name: exchaincli
version: v1.6.5
commit: 4f496351ab3bdc4ce014706711f31589021dd0de
build_tags: netgo
go: go version go1.19.2 darwin/amd64