节点运行问题

节点启动失败

kvdb_rocksdb - DB has been previously marked as corrupted, attempting repair

发生此错误是因为节点的数据文件遭到了损坏,导致无法启动。此种情况可尝试删掉数据目录,让节点重新同步数据。

如果想快速启动节点,可直接下载节点数据快照,解压后启动节点。

Err value: PKCS#8 cryptographic error

Screen Shot 2022-06-14 at 11.40.23.png

该错误可能是 pos_key 的密码输入错误导致的

window 系统启动节点: ExecutionContext exists for cur_era_genesis core\src\block_data_manager\mod.rs

在 Windows 系统使用数据快照,启动一个节点时,可能会遇到如下错误:

WechatIMG6266.jpeg

此错误可能是用 archive tool 下载数据的时候数据没下全导致的,其本质原因是启动用数据有问题导致的。

可尝试重新下载数据,启动节点。

Mac 系统运行 Release binary 失败

如果在 Mac 系统,使用从 Github Release 下载的节点程序,运行节点,遇到如下错误:

CleanShot 2022-07-12 at 11.08.07@2x.png

则说明 Host 系统的版本太低导致,目前只支持 OSX 12 版本及以上的系统。

另外使用 Mac 运行节点程序,需要注意根据电脑的处理器架构选择正确的处理器版本节点。M1 跟 x86 不能混用。

failed to start full client: Os { code: 6, kind: Uncategorized, message: "No such device or address" }

此错误是使用 docker 启动节点时,节点会尝试通过标准输入读取 pos_key 密码,读取不到返回的错误,此种情况可将该密码配置到配置文件中或设置到环境变量中具体参看这里

常见问题

Fullnode 会保存多长时间内的交易记录?state应该是完整的吧?一般需要多大的硬盘?

Fullnode 会保存最近10w Epoch 的区块数据,state 也是如此,只能查询最近几万的状态。 Fullnode 目前硬盘需要 250G, 建议硬盘为 400G。

Archive node一般需要多大的硬盘?

Archive node 目前空间为 500G 左右,建议空间为 800G-1T

运行节点需要什么配置的机器?

Conflux 节点建议使用 Linux server 运行,建议配置为 4核 16G内存。Fullnode 建议硬盘空间为 500G。Archive node 建议空间为 1T。

如何获取节点程序?

获取节点程序有多种方式:

  1. 直接至 Github Release 页面下载最新版本的编译程序
  2. 使用 conflux-rust docker 镜像
  3. 下载源码自行编译

节点 Core 空间 RPC 默认端口号是多少,eSpace 默认 RPC 端口号是多少?

Core 空间 HTTP 默认端口号是 12537. eSpace 默认 HTTP 端口号是 8545.

ERROR IO Worker #2 cfxcore::con - Fail to recover state_valid

此为正常现象,不影响节点同步和运行

Screen Shot 2022-06-24 at 11.43.19.png

INFO COW copy failed, check file system support

INFO Background Snapshott cfx_storage: - COW copy failed, check file system support. Command "cp" "-R" "--reflink=always"

此信息是由于机器文件系统不支持 Copy on write 功能,发出的提示,不影响节点运行。 如果机器支持 COW 将有助于提升节点性能。

测试网从头同步数据,中间同步卡主

测试网全量同步需要调大选项 additional_maintained_snapshot_count 到 50

运行 Conflux 节点是否需要公网 IP

节点运行不要求公网IP

主网,测试网节点的配置文件,节点程序是否相同, 可否互用

两个网络的配置文件,跟节点程序是不同的,不能混用,需要各自使用正确的节点程序跟配置文件

节点同步问题

failed to calculate mempool broadcast RTT: SystemTimeError(1.2762543s)

details = '''panicked at 'failed to calculate mempool broadcast RTT: SystemTimeError(1.2762543s)', core\src\pos\mempool\shared_mempool\peer_manager.rs:400:18'''
backtrace = '''
   0:     0x7ff737fa5645 - backtrace::backtrace::trace::hab5abe5046f447b5
   1:     0x7ff737fa4aac - backtrace::capture::Backtrace::new::hd9f1f4afb992e4d5
   2:     0x7ff73781b172 - crash_handler::setup_panic_handler::he3eed2ba07c7a235
   3:     0x7ff7380d6cf6 - std::panicking::rust_panic_with_hook
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\/library\std\src\panicking.rs:610
   4:     0x7ff7380d6afb - std::panicking::begin_panic_handler::closure$0
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\/library\std\src\panicking.rs:502
   5:     0x7ff7380d4377 - std::sys_common::backtrace::__rust_end_short_backtrace<std::panicking::begin_panic_handler::closure$0,never$>
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\/library\std\src\sys_common\backtrace.rs:139
   6:     0x7ff7380d67f9 - std::panicking::begin_panic_handler
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\/library\std\src\panicking.rs:498
   7:     0x7ff7384c8e10 - core::panicking::panic_fmt
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\/library\core\src\panicking.rs:116
   8:     0x7ff7384c8f23 - core::result::unwrap_failed
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\/library\core\src\result.rs:1690
   9:     0x7ff7374fcb6f - cfxcore::pos::mempool::shared_mempool::peer_manager::PeerManager::process_broadcast_ack::h66a5c6263f1cb4c5
  10:     0x7ff7374f5e19 - cfxcore::pos::mempool::shared_mempool::coordinator::coordinator::{{closure}}::h6c1ff8196b71855b
  11:     0x7ff737543216 - std::panicking::try::hd909c3032f511b0c
  12:     0x7ff73776aca6 - tokio::runtime::task::harness::Harness<T,S>::complete::hf2bbf17ca3ded03d
  13:     0x7ff73775b7ee - tokio::runtime::task::harness::Harness<T,S>::poll::h0348d72954fb7fe3
  14:     0x7ff7379a174f - std::thread::local::LocalKey<T>::with::h1b1b4832535dd8eb
  15:     0x7ff7379a0508 - tokio::runtime::thread_pool::worker::Context::run::h1871366c06b8b19b
  16:     0x7ff73799f313 - tokio::runtime::thread_pool::worker::Context::run::h1871366c06b8b19b
  17:     0x7ff737997b08 - tokio::macros::scoped_tls::ScopedKey<T>::set::h72c7679a82ac49e7
  18:     0x7ff73799ee3a - tokio::runtime::thread_pool::worker::run::he96293bdc96c9c85
  19:     0x7ff7379a25d5 - tokio::runtime::task::core::CoreStage<T>::poll::hfebd390d78b509ef
  20:     0x7ff7379a6036 - std::panicking::try::h2cdfe9794da6da4e
  21:     0x7ff7379a4150 - tokio::runtime::task::harness::Harness<T,S>::poll::h32aca2917e8ece97
  22:     0x7ff737994efc - tokio::runtime::blocking::pool::Inner::run::h50dc8a99eae64ddb
  23:     0x7ff737990855 - std::sys_common::backtrace::__rust_begin_short_backtrace::hd7f858c23b97e5cf
  24:     0x7ff7379a1203 - <&T as core::fmt::Debug>::fmt::hd9ffef8910ae9eb8
  25:     0x7ff7380dd69c - alloc::boxed::impl$44::call_once
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\library\alloc\src\boxed.rs:1854
  26:     0x7ff7380dd69c - alloc::boxed::impl$44::call_once
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\library\alloc\src\boxed.rs:1854
  27:     0x7ff7380dd69c - std::sys::windows::thread::impl$0::new::thread_start
                               at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a\/library\std\src\sys\windows\thread.rs:58
  28:     0x7ffc35637034 - BaseThreadInitThunk
  29:     0x7ffc36822651 - RtlUserThreadStart

此错误是系统API返回的系统时间往回跳导致,建议及时同步时间,避免系统时间误差扩大。

PoS 节点运行问题

运行 PoS 节点,如何使用原有节点的账户

把原有节点的 pos_config 下的 pos_key 文件复制过来即可.